Gönderi

n8n ile İş Akışı Otomasyonu - Pratik Kullanım Deneyimlerim

n8n ile İş Akışı Otomasyonu - Pratik Kullanım Deneyimlerim

Merhabalar,

Son zamanlarda iş akışı otomasyonları konusunda epey araştırma yaptım ve bir sürü araç denedim. Zapier, Make (eski adıyla Integromat) gibi servisleri kullandım fakat hep bir eksiklik hissettim. Sonrasında n8n (n-eight-n olarak okunuyor) ile tanıştım ve gerçekten çok memnun kaldım. Bu yazımda sizlere n8n’i neden tercih ettiğimi, nasıl kurduğumu ve hangi projelerde kullandığımı anlatacağım.

n8n Nedir ve Neden Tercih Ediyorum?

n8n, açık kaynak kodlu bir workflow otomasyon aracı. En çok sevdiğim özelliği “code when you need it, UI when you don’t” felsefesi. Yani hem görsel editör ile drag-drop yapabiliyorsunuz, hem de gerektiğinde JavaScript kodları yazabiliyorsunuz.

Neden Diğer Araçlar Yerine n8n?

Açıkçası Zapier’i denedim, güzel ama aylık subscription’ı var ve kendi sunucuma kuramıyorum. Make’i de kullandım, o da benzer durumda. n8n ile kendi sunucuma kuruyorum, verilerim bende kalıyor ve tamamen ücretsiz kullanabiliyorum.

Bir de şöyle bir artısı var; n8n’de 500’den fazla hazır entegrasyon mevcut. Gmail’den Slack’e, Postgres’ten MongoDB’ye kadar neredeyse her şey var. Olmayan bir servisi de HTTP Request node’u ile kolayca bağlayabiliyorsunuz.

Teknik Özellikleri

n8n, Node.js tabanlı modern bir mimari kullanıyor:

1
2
3
4
5
6
7
// n8n'in temel bileşenleri şunlar:
- Workflow Engine (TypeScript ile yazılmış)
- Node Framework (İşlemlerin çalıştığı katman)
- Editor Interface (Vue.js ile frontend)
- Database (PostgreSQL/MySQL/SQLite destekli)
- Queue System (Redis ile arka plan işlemleri)
- WebSocket (Anlık bildirimler için)

AI Entegrasyonu - En Sevdiğim Özellik!

Bu kısım gerçekten harika! n8n’in AI desteği, LangChain framework’ü sayesinde çok güçlü. Ben şu ana kadar şu AI modellerini kullandım:

Denediğim AI Modelleri

  • OpenAI GPT Models - GPT-4 ve GPT-3.5 Turbo (en çok kullandığım)
  • Anthropic Claude - Claude-3 gerçekten çok başarılı
  • Google Gemini - Ücretsiz kotası var, test için ideal
  • Azure OpenAI - Kurumsal projeler için güvenli
  • Ollama - Kendi sunucumda local model çalıştırıyorum

Pratik AI Kullanım Örnekleri

Doküman İşleme Botu

Geçen ay kişisel projelerim için böyle bir bot yaptım:

1
2
3
4
5
6
7
8
9
İş Akışı: "Gelen PDF'leri Otomatik Analiz Et"
Tetikleyici: Email'e PDF eki geldiğinde
Adımlar:
  1. PDF'ten metin çıkar
  2. OpenAI ile içeriği özetle
  3. Kategoriye göre sınıflandır
  4. Metadata'yı çıkar
  5. Veritabanına kaydet
  6. Slack'ten ekibi bilgilendir

Doküman İşleme Botu Workflow

Bu workflow sayesinde günde 50-60 dokümanı otomatik işleyebiliyoruz. Önceden manuel yapıyorduk, saatler alıyordu.

Müşteri Destek Otomasyonu

Bir diğer güzel proje de şuydu:

1
2
3
4
5
6
7
8
9
10
İş Akışı: "Akıllı Ticket Yönlendirme"
Tetikleyici: Yeni müşteri maili
Adımlar:
  1. Mail içeriğini analiz et
  2. Duygu analizi yap (pozitif/negatif)
  3. Kategori belirle (teknik/satış/destek)
  4. Öncelik puanı ver
  5. Uygun personele ata
  6. CRM'e kaydet
  7. Otomatik yanıt gönder

Docker ile n8n Kurulumu

n8n’i production ortamında kullanmak için Docker ile kurmayı öneriyorum. Ben de öyle yaptım ve gayet stabil çalışıyor.

Basit Docker Kurulumu

Önce tek container ile test edebilirsiniz:

1
2
3
4
5
docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -v ~/.n8n:/home/node/.n8n \
  n8nio/n8n

Bu komut ile n8n’i localhost:5678 adresinden erişebilirsiniz.

Production İçin Docker Compose

Ben production’da PostgreSQL ve Redis ile birlikte kullanıyorum:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# docker-compose.yml
version: '3.8'
services:
  n8n:
    image: n8nio/n8n:latest
    restart: always
    ports:
      - "5678:5678"
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=güçlü_şifreniz
      - N8N_HOST=your-domain.com
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - WEBHOOK_URL=https://your-domain.com
      - GENERIC_TIMEZONE=Europe/Istanbul
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_PORT=5432
      - DB_POSTGRESDB_DATABASE=n8n
      - DB_POSTGRESDB_USER=n8n
      - DB_POSTGRESDB_PASSWORD=n8n_password
    volumes:
      - n8n_data:/home/node/.n8n
    depends_on:
      - postgres
      - redis

  postgres:
    image: postgres:13
    restart: always
    environment:
      - POSTGRES_DB=n8n
      - POSTGRES_USER=n8n
      - POSTGRES_PASSWORD=n8n_password
    volumes:
      - postgres_data:/var/lib/postgresql/data

  redis:
    image: redis:6-alpine
    restart: always
    volumes:
      - redis_data:/data

volumes:
  n8n_data:
  postgres_data:
  redis_data:

Yoğun İş Yükü İçin Queue Mode

Eğer çok fazla workflow çalıştıracaksanız queue mode’u aktifleştirin:

1
2
3
4
5
# Bu environment variable'ları ekleyin:
N8N_EXECUTIONS_MODE=queue
QUEUE_BULL_REDIS_HOST=redis
QUEUE_BULL_REDIS_PORT=6379
EXECUTIONS_PROCESS=main

Bu sayede işlemler arka planda queue’da bekler ve sistem yavaşlamaz.

Pratik Kullanım Örnekleri

Microservice’lerle Entegrasyon

Projelerimde microservice mimarisi kullanıyorum. n8n ile özel servislerimi çağırmak için şöyle bir node yazdım:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// Özel n8n Node'u - Microservice Çağrısı
const microserviceNode = {
  description: {
    displayName: 'Microservice Çağırıcı',
    name: 'microserviceCaller',
    group: ['custom'],
    version: 1,
    inputs: ['main'],
    outputs: ['main'],
    properties: [
      {
        displayName: 'Servis Endpoint',
        name: 'endpoint',
        type: 'string',
        default: '',
        required: true
      },
      {
        displayName: 'Auth Token',
        name: 'token',
        type: 'string',
        typeOptions: { password: true },
        default: ''
      }
    ]
  },
  
  async execute() {
    const endpoint = this.getNodeParameter('endpoint', 0);
    const token = this.getNodeParameter('token', 0);
    
    try {
      const response = await this.helpers.request({
        method: 'POST',
        url: endpoint,
        headers: {
          'Authorization': `Bearer ${token}`,
          'Content-Type': 'application/json'
        },
        body: this.getInputData()[0].json
      });
      
      return [this.helpers.returnJsonArray([response])];
    } catch (error) {
      throw new NodeOperationError(this.getNode(), error);
    }
  }
};

IoT Veri İşleme Pipeline’ı

Evimde akıllı ev sistemi kurdum ve n8n ile verilerini işliyorum:

1
2
3
4
5
6
7
8
Pipeline: "IoT Veri İşleme"
Bileşenler:
  - MQTT Trigger (sensör verileri)
  - Veri doğrulama ve dönüştürme
  - InfluxDB'ye kaydetme
  - Anormal durum tespiti (AI model)
  - Slack'ten uyarı gönderme
  - Grafana dashboard güncelleme

Bu sistem sayesinde ev sıcaklığı, nem, hareket sensörleri gibi verilerimi otomatik takip ediyorum.

Performans Optimizasyonu ve İpuçları

Workflow Optimizasyonu

Büyük veri setleriyle çalışırken şu optimizasyonları yapıyorum:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Verimli Veri İşleme Kalıbı
function workflowOptimizasyonu() {
  return {
    // Büyük veri setleri için batch işleme
    batchSize: 100,
    
    // Paralel işleme aktif
    parallelProcessing: true,
    
    // Bellek yönetimi
    streamProcessing: true,
    
    // Hata durumu stratejisi
    retryPolicy: {
      maxRetries: 3,
      backoffStrategy: 'exponential'
    }
  };
}

Güvenlik Konuları

Production’da dikkat ettiğim güvenlik önlemleri:

  • Credential Management: HashiCorp Vault kullanıyorum
  • Network Security: VPN üzerinden erişim sağlıyorum
  • Authentication: LDAP entegrasyonu yaptım
  • Audit Logging: Tüm işlemleri logluyorum

Monitoring Kurulumu

n8n’i nasıl monitör ettiğimi anlatayım:

1
2
3
4
5
6
7
8
9
10
11
Monitoring Stack'im:
  Metrikler: Prometheus + Grafana
  Loglar: ELK Stack (Elasticsearch, Logstash, Kibana)
  Uyarılar: AlertManager + Slack bildirimleri
  
Takip Ettiğim Metrikler:
  - Workflow çalışma süreleri
  - Başarı/başarısızlık oranları
  - Kaynak kullanımı
  - API yanıt süreleri
  - Redis queue derinliği

Gerçek Projelerimden Örnekler

IT Operasyonları Otomasyonu

Geçen sene kişisel projelerim için IT operasyonları için böyle bir sistem kurdum:

1
2
3
4
5
6
7
8
9
10
11
12
Otomasyon Kapsamı:
  - Yeni çalışan onboarding'i
  - Sistem erişim yönetimi
  - Monitoring uyarıları
  - Incident response
  - Backup doğrulaması
  
Sonuçlar:
  Tasarruf Edilen Zaman: Ayda 200 saat
  Ortalama Saat Ücreti: 150 TL
  Aylık Tasarruf: 30.000 TL
  Yıllık ROI: 360.000 TL

Bu rakamlar gerçek! Önceden manuel yapılan işlemlerin çoğunu otomatikleştirdik.

Satış ve Pazarlama Otomasyonu

Bir e-ticaret sitesi için kurduğum pipeline:

1
2
3
4
5
6
7
8
9
10
11
12
Lead Management Pipeline:
  1. Form gönderimini yakala
  2. AI ile lead scoring yap
  3. CRM'e zenginleştir
  4. Email serisini tetikle
  5. Satış ekibini bilgilendir
  6. Takip randevusu planla
  
Sonuçlar:
  - Lead yanıt süresi: %90 azalma
  - Conversion oranı: %25 artış
  - Satış ekibi verimliliği: %40 artış

n8n vs. Diğer Araçlar - Kişisel Karşılaştırmam

Hepsini denedim, sizlere objektif karşılaştırmamı sunayım:

Özellikn8nZapierMakePower Automate
Kendi Sunucuna Kurma✅ Var❌ Yok❌ Yok⚠️ Sınırlı
Açık Kaynak✅ Tamamen❌ Yok❌ Yok❌ Yok
AI Entegrasyonu✅ Çok güçlü⚠️ Temel⚠️ Temel✅ İyi
Custom Code✅ JS/Python❌ Yok⚠️ Sınırlı⚠️ Sınırlı
Fiyatlandırma✅ Ücretsiz💰 Aylık💰 Aylık💰 Aylık
Teknik Esneklik✅ Çok yüksek❌ Düşük✅ Orta✅ Orta

Sonuç: Teknik bilginiz varsa ve kontrolü elinizde tutmak istiyorsanız n8n şahane!

Sonuç ve Tavsiyelerim

n8n’i bir senedir kullanıyorum ve gerçekten memnunum. Özellikle şu durumlar için çok uygun:

  • Teknik ekipler - Hem görsel hem de kod yazabilme imkanı
  • Kurumsal projeler - Güvenlik ve ölçeklenebilirlik
  • AI odaklı şirketler - Native AI entegrasyonu
  • Bütçe sınırlı projeler - Open source olması

Başlamak İsteyenlere Önerilerim

  1. Küçük Başlayın: İlk projenizi basit tutun, mesela email otomasyonu ile başlayın
  2. Mimariyi Planlayın: İleride büyüyeceğinizi düşünerek altyapıyı kurun
  3. Eğitim Alın: Ekibinize Docker, workflow mantığı öğretin
  4. Monitoring Kurun: Production’a geçmeden önce monitoring’i halledin
  5. Güvenlik: Enterprise standartlarını baştan uygulayın

n8n’in fair-code yaklaşımı, teknik esnekliği ve AI-native mimarisi gerçekten etkileyici. GitHub’da 126k+ yıldızı var ve aktif bir topluluğu mevcut. Long-term viability açısından da güvenli görünüyor.

Benden bu kadar! Sorularınız varsa yorum yapabilir veya bana ulaşabilirsiniz. n8n ile güzel projeler dilerim! 🚀

Bu gönderi CC BY 4.0 lisansı altındadır.