Jak przyspieszyć n8n?
Najpierw: zdiagnozuj gdzie jest problem
Zanim zaczniesz optymalizować, odpowiedz na pytanie: co jest wolne?
- Wolne egzekucje workflow? — problem może być w logice workflow lub zewnętrznych API
- Wolny interfejs n8n? — problem z RAM lub CPU serwera
- Kolejkowanie, workflow się nie uruchamiają? — problem z konfiguracją queue
Zmiana bazy danych: SQLite → PostgreSQL
Domyślnie n8n używa SQLite. Przy dużej liczbie egzekucji SQLite staje się wąskim gardłem.
Przejście na PostgreSQL:
- Zainstaluj PostgreSQL na tym samym lub osobnym serwerze
- Ustaw zmienne środowiskowe:
DB_TYPE=postgresdb,DB_POSTGRESDB_HOST,DB_POSTGRESDB_DATABASE,DB_POSTGRESDB_USER,DB_POSTGRESDB_PASSWORD - Uruchom n8n ponownie — automatycznie zmigruje schemat
Różnica jest wyraźna przy 1000+ egzekucji dziennie.
Włącz tryb queue (Redis)
Tryb queue pozwala na równoległe wykonywanie workflow przez wielu workerów. Wymaga Redis.
Ustaw: EXECUTIONS_MODE=queue, QUEUE_BULL_REDIS_HOST=localhost
Uruchom osobny proces worker: n8n worker
Ogranicz historię egzekucji
n8n domyślnie przechowuje historię wszystkich egzekucji. Przy setkach tysięcy rekordów baza rośnie i zwalnia.
Ustaw EXECUTIONS_DATA_MAX_AGE=168 (7 dni w godzinach) lub EXECUTIONS_DATA_PRUNE=true.
Optymalizacja workflow
- Unikaj pętli z setkami iteracji jeśli możesz zastąpić je operacjami batch
- Nie pobieraj więcej danych niż potrzebujesz (np. z API pobierz tylko potrzebne pola)
- Używaj node’a Cache gdzie możliwe
Upgrade serwera
Najprostsza opcja. VPS z 4 GB RAM i 2 vCPU obsłuży 90% przypadków. Przy 8 GB RAM n8n działa płynnie nawet przy intensywnym użyciu.
Masz problem z wydajnością n8n? Napisz do mnie — pomogę zdiagnozować i zoptymalizować.