LibUv: নোড জেএস এর কথা আসলেই অনেকেই শুধুমাত্র V8 ইঞ্জিনের কথাই বেশি করে ফোকাস করে থাকেন এবং অন্যান্য পার্ট গুলোর কথা বেমালুম এড়িয়ে জান। কিন্তু মনে রাখা উচিৎ যে, Node.js এর মধ্যে অনেক গুলো মডিউল আছে যার একটি হচ্ছে V8 ইঞ্জিন আর ঠিক একই রকম আরেকটি গুরুত্বপূর্ণ অংশ হচ্ছে libuv. আমার মতে Node.js এর মুল দুটো অংশ হচ্ছে V8 ইঞ্জিন এবং এই libuv লাইব্রেরী। libuv ছাড়া Node.js এনভ্যায়র্নমেন্টের মুল আকর্ষণী বৈশিষ্ট্য গুলোরই অস্তিত্ব থাকতো না। যা হোক, libuv হচ্ছে মাল্টি প্ল্যাটফর্ম সাপোর্ট করে এবং কম্পিউটার সিস্টেমে asynchronous ইনপুট/আউটপুট অপারেশন খুব সুন্দর ভাবে ম্যানেজ করে, এমন একটি লাইব্রেরী। বলে রাখা ভালো, Node.js প্রথম দিকে এই লাইব্রেরীকে মূলত libev এবং libio লাইব্রেরীর উপড়ে একটি আবস্ট্র্যাকশন লেয়ার হিসেবে ব্যবহার করতো। অর্থাৎ libuv এর নিচে মূলত কনকারেন্ট অপারেশনগুলো এই libio এবং libev হ্যান্ডেল করতো। কিন্তু আস্তে আস্তে libuv লাইব্রেরী নিজেই অনেক ডেভেলপ হয়েছে খুব ইফিসিয়েন্টলি কনকারেন্সি হ্যান্ডেল করার জন্য। এই অবস্থায় আরেকবার মনে করিয়ে দিতে চাই, V8 ইঞ্জিন যেখানে জাভাস্ক্রিপ্ট এক্সিকিউশনের দায়িত্ব নিয়ে থাকে সেখানে libuv হ্যান্ডেল করে Event Loop এবং asynchronous I/O বা ইনপুট/আউটপুট অপারেশন গুলোকে। এর কিছু গুরুত্বপূর্ণ বৈশিষ্ট্য যেগুলো না জানলেই নয় - ফুল ফিচার একটি ইভেন্ট লুপ (অপারেটিং সিস্টেমের উপর ভিত্তি করে এটি epoll, kqueue, IOCP, ইত্যাদির উপর নির্ভরশীল), Asynchronous TCP এবং UDP সকেট, Asynchronous ফাইল সিস্টেম অপারেশন, থ্রেড পুল, সিগনাল হ্যান্ডেলিং সহ আরও অনেক।