چرا Node.js؟

به جرأت می توان گفت یکی از انقلابی‌ترین گام‌های رو به جلو در حوزه وب ظهور Node.js بوده است که روز به روز بر محبوبیت آن افزوده می‌شود.

جاوا اسکریپت در سمت سرور

اولین برداشت از جاوا اسکریپت استفاده از آن در مرورگر می باشد. اما این فقط یک قرارداد ساده است. Node.js به شما این اجازه را می دهد که جاوا اسکریپت را در backend اجرا کنید.

Node.js یک پلتفرم بر اساس موتور جاوا اسکریپت کروم V8 است. Node.js برای ساخت سریعتر و مقیاس پذیرتر اپلیکیشن های تحت شبکه بوجود آمده است. این پلتفرم از تکنولوژی non-blocking I/O که یک تکنولوژی event-driven است به جای روش سنتی Treading استفاده می کند.

به علاوه Node.js دارای ماژول های مفید بسیاری است. بنابراین نیاز نیست همه چیز را از اول بنویسید.

پایین بودن زمان پاسخگویی در Node.js

  • Node.js یک پلتفرم single-threaded و asynchronous است. هیچ کدام از عملکردهای مرتبط با I/O بقیه عملکردها را متوقف نمی کند. این به معنای آن است که شما می‌توانید در یک زمان هم از روی دیسک یک فایل را بخوانید هم ایمیل بفرستید و هم بر روی پایگاه داده Query بزنید.
  • ماشین مجازی(Google V8) در Node.js که کدهای جاوا اسکریپت را اجرا می کند دارای ویژگی کامپایل در زمان اجرا می باشد. این ماشین مجازی کدهای جاوا اسکریپت را در زمان اجرا به کدهایی نزدیک به زبان ماشین کامپایل می‌کند، این کار باعث می‌شود توابعی که به دفعات فرا خوانده می‌شوند با تبدیل شدن به زبان ماشین به طور قابل ملاحظه‌ای سرعت اجرا را بهبود دهند.

بنابراین Node.js یک محیط زمان اجرا و یک کتابخانه است که با توجه به ویژگی های یاد شده یک انتخاب مناسب برای پیاده سازی اپلیکیشن های تحت شبکه می باشد.