یکی از اولین سوالها قبل از نصب n8n این است که چه سروری برای n8n لازم است. جواب کوتاه این است که خود n8n سبک است، اما نوع ورکفلوها، حجم دادهای که پردازش میکنند و اینکه مدل هوش مصنوعی روی همان سرور اجرا شود یا نه، نیاز به منابع را چند برابر تغییر میدهد. در این راهنما برای سناریوهای مختلف، مقدار CPU، RAM و دیسک مناسب را مشخص میکنیم و میگوییم کی باید سراغ Queue Mode رفت.
فهرست مطالب
چه چیزی مصرف منابع n8n را تعیین میکند؟
n8n یک برنامه Node.js است و در حالت بیکار، معمولاً چند صد مگابایت RAM مصرف میکند. مصرف واقعی را این عوامل تعیین میکنند:
- تعداد اجرای همزمان: هر ورکفلوی در حال اجرا حافظه و پردازنده خودش را میگیرد.
- حجم داده در هر اجرا: ورکفلویی که ۵۰ هزار ردیف از یک API میخواند یا فایل PDF بزرگ پردازش میکند، کل داده را در حافظه نگه میدارد.
- نودهای Code: اسکریپتهای JavaScript یا Python سنگین مستقیماً CPU مصرف میکنند.
- ذخیره تاریخچه اجرا: اگر خروجی همه اجراها ذخیره شود، دیتابیس بهسرعت بزرگ میشود.
- سرویسهای کنار n8n: PostgreSQL، Redis و بهخصوص مدلهای زبانی محلی.
جدول منابع پیشنهادی
| سناریو | CPU | RAM | دیسک NVMe | معماری |
|---|---|---|---|---|
| تست و استفاده شخصی، چند ورکفلوی ساده | ۱ تا ۲ هسته | ۲ گیگابایت | ۲۰ گیگابایت | n8n با SQLite |
| کسبوکار کوچک، دهها ورکفلو و Webhook | ۲ هسته | ۴ گیگابایت | ۴۰ گیگابایت | n8n و PostgreSQL |
| سازمانی، صدها اجرا در ساعت و پردازش فایل | ۴ هسته | ۸ گیگابایت | ۸۰ گیگابایت | n8n و PostgreSQL، در صورت نیاز Queue Mode |
| حجم بالا با اجرای موازی زیاد | ۸ هسته یا بیشتر | ۱۶ گیگابایت | ۱۶۰ گیگابایت | Queue Mode با Redis و چند Worker |
| n8n بههمراه LLM محلی روی CPU | ۸ هسته | ۱۶ تا ۳۲ گیگابایت | ۱۰۰ گیگابایت | n8n، PostgreSQL و Ollama |
| n8n بههمراه LLM با سرعت عملیاتی | ۸ هسته | ۳۲ گیگابایت | ۲۰۰ گیگابایت | سرور GPU یا Ollama روی سرور GPU جداگانه |
این اعداد نقطه شروع هستند. بعد از چند هفته کار، مصرف واقعی را پایش کنید و منابع را بر اساس آن تنظیم کنید؛ مزیت VPS این است که ارتقای منابع آن ساده است.
RAM؛ گلوگاه اصلی n8n
رایجترین مشکل n8n کمبود حافظه است، نه پردازنده. وقتی یک ورکفلو داده زیادی را در حافظه بارگذاری کند، فرایند Node.js ممکن است با خطای «JavaScript heap out of memory» متوقف شود یا سیستمعامل آن را با OOM Killer ببندد. نشانههای کمبود RAM:
- اجراهایی که بدون پیام خطای مشخص با وضعیت Crashed تمام میشوند.
- ریاستارت ناگهانی کانتینر n8n.
- کند شدن کل سرور به دلیل استفاده از Swap.
اگر ورکفلوهای شما داده حجیم پردازش میکنند، بهجای افزایش بیپایان RAM، داده را با نود Loop Over Items در دستههای کوچکتر پردازش کنید. محاسبه کلی RAM سرور را هم در راهنمای خرید VPS توضیح دادهایم.
CPU و اجرای همزمان
در حالت عادی (Regular Mode)، همه اجراها در یک فرایند n8n انجام میشوند. Node.js برای کدهای JavaScript تکرشتهای است، پس یک نود Code سنگین میتواند اجرای بقیه ورکفلوها را کند کند. برای جلوگیری از هجوم اجراها، میتوانید تعداد اجرای همزمان را محدود کنید:
N8N_CONCURRENCY_PRODUCTION_LIMIT=10
اجراهای اضافه در صف میمانند و بهترتیب انجام میشوند؛ این کار از پر شدن ناگهانی حافظه جلوگیری میکند.
دیسک و پایگاه داده
n8n بهطور پیشفرض از SQLite استفاده میکند که برای شروع کافی است. اما در محیط عملیاتی PostgreSQL را انتخاب کنید؛ با اجرای همزمان زیاد، SQLite دچار قفل شدن فایل میشود و مهاجرت از آن در آینده دردسرساز است. فایل آماده راهاندازی n8n با PostgreSQL را در راهاندازی n8n با Docker Compose آوردهایم.
از دیسک NVMe استفاده کنید؛ عملیات دیتابیس، ذخیره تاریخچه اجرا و فایلهای باینری با دیسک کند، کل سیستم را کند میکنند. تفاوت انواع دیسک را در مقایسه NVMe، SSD و HDD ببینید.
Queue Mode برای حجم بالا
وقتی یک فرایند n8n دیگر جوابگو نیست، Queue Mode معماری را تغییر میدهد:
- فرایند اصلی فقط رابط کاربری، تریگرها و Webhookها را مدیریت میکند.
- اجراها در صف Redis قرار میگیرند.
- یک یا چند Worker اجراها را از صف برمیدارند و انجام میدهند.
با این معماری میتوانید با افزودن Worker، روی همان سرور یا سرورهای دیگر، ظرفیت را افزایش دهید. Queue Mode به PostgreSQL نیاز دارد و با SQLite کار نمیکند. اگر Workerها روی سرورهای جداگانه هستند، آنها را از طریق شبکه خصوصی به Redis و دیتابیس وصل کنید.
اگر مدل هوش مصنوعی هم روی سرور باشد
خود n8n به کارت گرافیک نیاز ندارد. اما اگر مدل زبانی را با Ollama روی همان سرور اجرا میکنید، نیاز به منابع کاملاً به مدل بستگی دارد. یک مدل ۷ تا ۸ میلیاردی کوانتایزشده حدود ۵ تا ۶ گیگابایت حافظه میگیرد. روی CPU اجرا میشود، ولی برای ورکفلوهای پرتکرار کند است. دو معماری پیشنهادی:
- یک سرور GPU برای همه چیز: سادهتر، مناسب تیمهای کوچک.
- n8n روی VPS و Ollama روی سرور GPU جداگانه: انعطاف بیشتر؛ سرور GPU را میتوان بین چند سرویس مشترک کرد.
برای انتخاب کارت مناسب، مقاله VRAM مورد نیاز هوش مصنوعی را بخوانید.
تنظیماتی که مصرف منابع را کم میکنند
- پاکسازی خودکار تاریخچه:
EXECUTIONS_DATA_PRUNE=trueوEXECUTIONS_DATA_MAX_AGE=168(به ساعت) تاریخچه قدیمی را حذف میکنند. - ذخیره نکردن اجراهای موفق: با
EXECUTIONS_DATA_SAVE_ON_SUCCESS=noneفقط اجراهای ناموفق برای رفع اشکال ذخیره میشوند. - ذخیره فایلهای باینری روی دیسک:
N8N_DEFAULT_BINARY_DATA_MODE=filesystemفایلها را بهجای حافظه روی دیسک نگه میدارد. - تقسیم ورکفلوهای بزرگ: با نود Execute Workflow، یک ورکفلوی سنگین را به چند زیرورکفلو تقسیم کنید.
سوالات متداول
حداقل RAM برای n8n چقدر است؟
n8n با ۱ گیگابایت RAM هم اجرا میشود، اما برای کار پایدار با PostgreSQL حداقل ۲ گیگابایت و برای استفاده کاری ۴ گیگابایت توصیه میشود.
آیا n8n به کارت گرافیک نیاز دارد؟
خیر. فقط اگر مدل هوش مصنوعی را روی همان سرور اجرا میکنید، به GPU نیاز دارید. اتصال به APIهای خارجی مثل OpenAI به GPU نیازی ندارد.
از کجا بفهمم سرور n8n کم آورده است؟
با docker stats مصرف لحظهای کانتینرها را ببینید و در لاگ n8n دنبال خطاهای out of memory بگردید. اجراهای Crashed بدون دلیل مشخص هم معمولاً نشانه کمبود RAM هستند.
Queue Mode را از چه زمانی فعال کنم؟
وقتی اجراهای همزمان زیاد شدهاند، Webhookها دیر پاسخ میدهند یا یک ورکفلوی سنگین بقیه را کند میکند. برای اغلب کسبوکارهای کوچک حالت عادی کافی است.
سرور مناسب n8n با امکان ارتقای سریع
با سرورهای مجازی تراست هاست از یک پلن کوچک شروع کنید و هر زمان حجم اتوماسیون بیشتر شد، منابع را بدون جابهجایی داده افزایش دهید.