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
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:
Özellik | n8n | Zapier | Make | Power 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
- Küçük Başlayın: İlk projenizi basit tutun, mesela email otomasyonu ile başlayın
- Mimariyi Planlayın: İleride büyüyeceğinizi düşünerek altyapıyı kurun
- Eğitim Alın: Ekibinize Docker, workflow mantığı öğretin
- Monitoring Kurun: Production’a geçmeden önce monitoring’i halledin
- 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! 🚀