Node.js یک پلتفرم براساس موتور جاوا اسکریپت V8 گوگل کروم است که امکان اجرای کد جاوا اسکریپت را در سمت سرور فراهم مینماید.Node.js برای سبکی و کارآمدی خود از تکنولوژیهای event-driven و non-blocking I/O استفاده میکند.
ویژگیهای کلیدی نرمافزار Node.js:
- بسیار سریع است؛Node.js روی موتور جاوا اسکریپت گوگل کروم V8 ساخته شده است و کتابخانه آن در اجرای کد بسیار سریع است
- I/O غیرهمزمان و Event Driven ،تمام API های کتابخانه Node.js به صورت غیر همزمان هستند یعنی غیر بلوک کردن. بنابراین سرور مبتنی بر Node.js هرگز منتظر API برای بازگشت دادهها نیست این فناوری دلیل بر سرع بالای آن است.
- Single threaded، مدل single threaded با حلقه event را دنبال میکند
- بسیار مقیاس پذیر است،مکانیسن event به سرور کمک میکند تا از روش non-blocking پاسخ دهد
- بدون بافر؛ زمان پردازش کلی را در هنگام آپلود فیالهای صوتیو تصویری کاهش میدهد
- متنباز(Open source) است ،برای افزودن قابلیتهایاضافی بسیار مناسب است
- تحت لیسانس MIT است
Node.js چگونه کار میکند؟
Node.js برای ساخت برنامههای سریع و کاربردی تحت شبکه بسیار مناسب است چرا که قادر به مدیریت تعداد بسیار زیادی از اتصالات همزمان با سرعت بالاست ، که به مقیاسپذیری بالا میانجامد.با نگاه دقیقتر به آن در مییابیم که در مقایسه با تکنیکهای سنتی در وب که هر ارتباط (درخواست) یک thread جدید ایجاد کرده و موجب مصرف زیاد منابع سختافزاری (به ویژه RAM) خواهد شد، Node.js به صورت single-thread و با استفاده از non-blocking I/O اجازه پشتیبانی از دهها هزار ارتباط همزمانرا فراهم میکند.
(Node.js LTS v6.11.2 -(npm 3.10.10
(Node.js v8.4.0 (npm 5.3.0