JavaScript के लिए नए फ्रेमवर्क ने प्रदर्शन के रिकॉर्ड तोड़े
मॉस्को, 15 अक्टूबर 2020. डेवलपर समुदाय उत्साहित है: फ्रेमवर्क NeoV8 की घोषणा की गई है, जो निर्माताओं के अनुसार, मानक Node.js 14. LTS की तुलना में HTTP अनुरोधों को संसाधित करने में 3.2 गुना अधिक थ्रूपुट (RPS) प्रदर्शित करता है। GitHub पर प्रकाशित बेंचमार्क एक साधारण CRUD एप्लिकेशन पर प्रतियोगी के 28,000 अनुरोध/सेकंड के मुकाबले 89,000 अनुरोध/सेकंड दिखाते हैं।
फ्रेमवर्क के निर्माता, एलेक्सी बेलोव (Google में पूर्व V8 इंजीनियर), पारंपरिक इवेंट लूप (Event Loop) को छोड़कर io_uring-आधारित एसिंक्रोनस शेड्यूलर (Linux 5.x में एसिंक्रोनस इनपुट-आउटपुट तंत्र) को अपनाने को सफलता का कारण बताते हैं। "हमने नेटवर्क और फ़ाइल सिस्टम के साथ काम करने वाले कोर को फिर से लिखा। कॉलबैक की प्रतीक्षा करने के बजाय, शेड्यूलर डेटा को बफर में प्रीलोड करता है, जिससे कॉन्टेक्स्ट स्विचिंग पर 40% तक समय बचता है," बेलोव ने पोर्टल Habr को दिए एक इंटरव्यू में कहा।
हालांकि, विशेषज्ञ सावधानी बरतने का आग्रह करते हैं। "आंकड़े प्रभावशाली हैं, लेकिन परीक्षण जटिल गणनाओं के बिना सिंथेटिक API पर किए गए थे। डेटाबेस और बाहरी कॉल वाली वास्तविक परियोजनाओं में, अंतर 30-50% तक कम हो सकता है," यांडेक्स.क्लाउड के प्रमुख डेवलपर निकिता प्रोकोपिएव टिप्पणी करते हैं। फिर भी, TechEmpower बेंचमार्क ने पहले ही NeoV8 को अपनी Round 20 रैंकिंग में शामिल कर लिया है, जहाँ इसने Fastify और Koa को पीछे छोड़ते हुए सभी फ्रेमवर्क के बीच चौथा स्थान प्राप्त किया।
फ्रेमवर्क npm पैकेज के साथ पूरी तरह से संगत है, लेकिन इसके लिए Node.js ≥ 14.5 और Linux 5.4+ कर्नेल की आवश्यकता है। Windows और macOS पर, io_uring की अनुपस्थिति के कारण प्रदर्शन 60% तक गिर जाता है। संस्करण 1.0 का रिलीज़ दिसंबर 2020 के लिए निर्धारित है, और फिलहाल यह Release Candidate स्थिति में उपलब्ध है।
बाजार पहले से ही प्रतिक्रिया दे रहा है: स्टार्टअप DeployNow ने NeoV8 को अपनी एज-सर्विस में एकीकृत किया है, जिसमें सर्वर लागत में 35% की कमी का दावा किया गया है। हालांकि, Netflix और PayPal जैसी बड़ी कंपनियों ने अभी तक संभावित बदलाव पर कोई टिप्पणी नहीं की है। सवाल बना हुआ है: क्या NeoV8 एक नया मानक बनेगा या हाई-लोड सिस्टम के लिए एक विशिष्ट उपकरण बना रहेगा?