هاست خوب برای Node.js هاستی است که اپلیکیشن شما را همیشه در حال اجرا نگه دارد، بعد از هر خطا یا ری‌استارت خودش دوباره بالا بیاورد، و نسخه‌ی Node و پکیج‌ها را در اختیار خودتان بگذارد. برخلاف PHP که با هر درخواست اجرا و تمام می‌شود، اپلیکیشن Node یک پروسه‌ی دائمی است. همین یک تفاوت، معیارهای انتخاب هاست را عوض می‌کند.

چرا هاست معمولی برای Node.js جواب نمی‌دهد؟

سایت PHP (مثل وردپرس) اپلیکیشن Node.js
اجرا با هر درخواست، کوتاه یک پروسه‌ی دائمی
حافظه بعد از هر درخواست آزاد می‌شود تمام مدت در اختیار اپلیکیشن
اگر خطا بدهد همان درخواست خراب می‌شود کل اپلیکیشن پایین می‌آید
نیاز اصلی پردازش در لحظه رم پایدار و مدیریت پروسه

شش معیار انتخاب

  1. مدیریت پروسه. ابزاری مثل PM2 که اپلیکیشن را بعد از کرش یا ری‌استارت سرور خودکار بالا بیاورد. بدون این، باید خودتان مراقب باشید.
  2. رم کافی و مشخص. اپلیکیشن Node رم را نگه می‌دارد. عدد رم باید در مشخصات پلن نوشته شده باشد.
  3. انتخاب نسخه‌ی Node.js. پروژه‌ها به نسخه‌ی مشخصی وابسته‌اند.
  4. نصب پکیج با NPM. بدون محدودیت در پکیج‌های موردنیاز پروژه.
  5. دیتابیس. دست‌کم MySQL در کنار اپلیکیشن.
  6. پشتیبانی از اتصال دائمی. اگر پروژه WebSocket یا Socket.io دارد، هاست باید آن را پشتیبانی کند.

هاست Node.js رایکت در این شش معیار

معیار در رایکت
مدیریت پروسه PM2 با راه‌اندازی خودکار
منابع ۸ هسته پردازنده و ۸ گیگابایت رم در هر دو پلن
فضا ۱۰ و ۲۰ گیگابایت
نسخه‌ی Node.js نسخه‌های مختلف قابل انتخاب
پکیج‌ها NPM و نصب پکیج دلخواه
دیتابیس MySQL
WebSocket پشتیبانی می‌شود
سایر SSL رایگان، بکاپ JetBackup، سرور ایران

قیمت و جزئیات در صفحه‌ی هاست Node.js.

مقادیر لازم برای ساخت اپلیکیشن Node.js روی هاست
مقادیری که برای ساخت اپلیکیشن Node.js روی هاست لازم است

هاست Node.js یا سرور مجازی؟

هاست Node.js سرور مجازی
نصب و امنیت سیستم‌عامل با شرکت با شما
راه‌اندازی اولیه چند دقیقه نصب Node، وب‌سرور، فایروال، SSL
آزادی نصب نرم‌افزار در چارچوب سرویس کامل
مناسب برای وب‌اپلیکیشن، API، Next.js، NestJS معماری چندسرویسی و نیازهای خاص

اگر کار شما نوشتن کد است نه نگهداری سرور، هاست Node.js وقتتان را آزاد می‌کند. مقایسه‌ی کلی‌تر در هاست اشتراکی یا سرور مجازی.

قبل از استقرار، در پروژه چک کنید

  • پورت را از متغیر محیطی بخوانید، نه عدد ثابت در کد.
  • رمزها و کلیدها در متغیر محیطی باشند، نه در مخزن.
  • اسکریپت start در package.json تعریف شده باشد.
  • فایل‌های آپلودی کاربران بیرون از پوشه‌ی کد ذخیره شوند تا با هر استقرار پاک نشوند.
  • برای Next.js، دستور build را قبل از start اجرا کنید.

مراحل راه‌اندازی در راه‌اندازی اپلیکیشن روی هاست و استقرار با گیت در کار با Git در سی‌پنل آمده است.

سوال‌های رایج

Next.js و NestJS روی این هاست اجرا می‌شوند؟

بله؛ همچنین Express، Fastify، Nuxt و Adonis.

فرانت React یا Vue را هم باید روی هاست Node بگذارم؟

اگر خروجی build آن فایل‌های استاتیک است، نه؛ روی هاست لینوکس معمولی هم میزبانی می‌شود. هاست Node برای بخشی است که سمت سرور اجرا می‌شود.

پروژه‌ی لاراول دارم؛ این سرویس مناسب است؟

نه، لاراول PHP است. راهنمای هاست لاراول را ببینید.