नोड.जेएस: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 77: Line 77:
Node.js [[Index.php?title=जेलास्टिक|जेलास्टिक]], [[Index.php?title=गूगल क्लाउड प्लेटफ़ॉर्म|गूगल क्लाउड प्लेटफ़ॉर्म]], [[Index.php?title=AWS इलास्टिक बीनस्टॉक|AWS इलास्टिक बीनस्टॉक]], जॉयंट और अन्य जैसे कई क्लाउड-होस्टिंग प्लेटफ़ॉर्म पर समर्थित है।
Node.js [[Index.php?title=जेलास्टिक|जेलास्टिक]], [[Index.php?title=गूगल क्लाउड प्लेटफ़ॉर्म|गूगल क्लाउड प्लेटफ़ॉर्म]], [[Index.php?title=AWS इलास्टिक बीनस्टॉक|AWS इलास्टिक बीनस्टॉक]], जॉयंट और अन्य जैसे कई क्लाउड-होस्टिंग प्लेटफ़ॉर्म पर समर्थित है।


== विमोचन ==
== लोकार्पण ==
<!-- Template:Version - for version & release history. Documentation and examples: http://en.wikipedia.org/wiki/Template:Version -->
<!-- Template:Version - for version & release history. Documentation and examples: http://en.wikipedia.org/wiki/Template:Version -->
{| class="wikitable sortable floatright" style="text-align: center;"
{| class="wikitable sortable floatright" style="text-align: center;"
!Release<ref>{{Cite web|url=https://nodejs.org/en/about/releases/|title=Releases|website=Node.js}}</ref>
!रिलीस<ref>{{Cite web|url=https://nodejs.org/en/about/releases/|title=Releases|website=Node.js}}</ref>
!Status
!स्टेटस
!Code name
!कोड नेम
!Release date
!रिलीज़ डेट
!Maintenance end
!मेंटेनेंस एन्ड
|-
|-
| {{Version|o|0.10.x}}
| {{Version|o|0.10.x}}
Line 100: Line 100:
| {{Version|o|4.x}}
| {{Version|o|4.x}}
| {{Version|o|End-of-Life}}
| {{Version|o|End-of-Life}}
| Argon<ref name="Release" />
| आर्गन<ref name="Release" />
| 2015-09-08
| 2015-09-08
| 2018-04-30
| 2018-04-30
Line 112: Line 112:
| {{Version|o|6.x}}
| {{Version|o|6.x}}
| {{Version|o|End-of-Life}}
| {{Version|o|End-of-Life}}
| Boron<ref name="Release" />
| बोरोन<ref name="Release" />
| 2016-04-26
| 2016-04-26
| 2019-04-30
| 2019-04-30
Line 124: Line 124:
| {{Version|o|8.x}}
| {{Version|o|8.x}}
| {{Version|o|End-of-Life}}
| {{Version|o|End-of-Life}}
| Carbon<ref name="Release" />
| कार्बन<ref name="Release" />
| 2017-05-30
| 2017-05-30
| 2019-12-31
| 2019-12-31
Line 136: Line 136:
| {{Version|o|10.x}}
| {{Version|o|10.x}}
| {{Version|o|End-of-Life}}
| {{Version|o|End-of-Life}}
| Dubnium<ref name="Release" />
| दुबनीम<ref name="Release" />
| 2018-04-24
| 2018-04-24
| 2021-04-30
| 2021-04-30
Line 148: Line 148:
| {{Version|o|12.x}}
| {{Version|o|12.x}}
| {{Version|o|End-of-Life}}
| {{Version|o|End-of-Life}}
| Erbium<ref name="Release" />
| अर्बियम<ref name="Release" />
| 2019-04-23
| 2019-04-23
| 2022-04-30
| 2022-04-30
Line 160: Line 160:
| {{Version|co|14.x|show=}}
| {{Version|co|14.x|show=}}
| {{Version|co|Maintenance LTS|show=}}
| {{Version|co|Maintenance LTS|show=}}
| Fermium<ref name="Release" />
| फेर्मियम<ref name="Release" />
| 2020-04-21
| 2020-04-21
| 2023-04-30
| 2023-04-30
Line 172: Line 172:
| {{Version|co|16.x}}
| {{Version|co|16.x}}
| {{Version|co|Maintenance LTS}}
| {{Version|co|Maintenance LTS}}
| Gallium<ref name="Release" />
| गैलियम<ref name="Release" />
| 2021-04-20
| 2021-04-20
| 2023-09-11<ref>[https://nodejs.org/en/blog/announcements/nodejs16-eol/ Bringing forward the End-of-Life Date for Node.js 16], Node.js Website</ref>
| 2023-09-11<ref>[https://nodejs.org/en/blog/announcements/nodejs16-eol/ Bringing forward the End-of-Life Date for Node.js 16], Node.js Website</ref>
Line 184: Line 184:
| {{Version|co|18.x}}
| {{Version|co|18.x}}
| {{Version|co|Active LTS}}
| {{Version|co|Active LTS}}
|Hydrogen<ref name="Release" />
|हाइड्रोजन<ref name="Release" />
| 2022-04-19
| 2022-04-19
| 2025-04-30
| 2025-04-30
Line 196: Line 196:
| {{Version|p|20.x}}
| {{Version|p|20.x}}
| {{Version|p|Current}}
| {{Version|p|Current}}
| New Version<ref>{{cite web |title=Node.js 20: Latest Features and Enhancements |url=https://radixweb.com/blog/what-is-new-in-nodejs-20 |website=Radixweb |access-date=20 April 2023 |language=en}}</ref>
| न्यू वर्शन<ref>{{cite web |title=Node.js 20: Latest Features and Enhancements |url=https://radixweb.com/blog/what-is-new-in-nodejs-20 |website=Radixweb |access-date=20 April 2023 |language=en}}</ref>
| 2023-04-18
| 2023-04-18
| 2026-04-30
| 2026-04-30
Line 222: Line 222:
| colspan="5" | <small>{{Version |l |show=111101}}</small>
| colspan="5" | <small>{{Version |l |show=111101}}</small>
|}
|}
Node.js के नए प्रमुख रिलीज हर छह महीने में [[GitHub]] मुख्य शाखा से काटे जाते हैं। सम-संख्या वाले संस्करण अप्रैल में काटे जाते हैं और विषम-संख्या वाले संस्करण अक्टूबर में काटे जाते हैं। जब एक नया अजीब संस्करण जारी किया जाता है, तो पिछला सम संस्करण [[दीर्घकालिक समर्थन]] (एलटीएस) में संक्रमण से गुजरता है, जो उस संस्करण को एलटीएस नामित तिथि से 18 महीने का सक्रिय समर्थन देता है। इन 18 महीनों के समाप्त होने के बाद, एक एलटीएस रिलीज़ को अतिरिक्त 12 महीनों का रखरखाव समर्थन प्राप्त होता है। वर्तमान रिलीज़ में आने के कुछ सप्ताह बाद एक सक्रिय संस्करण परिवर्तनों के नॉन-ब्रेकिंग बैकपोर्ट प्राप्त करता है। एक रखरखाव रिलीज़ केवल महत्वपूर्ण सुधार और प्रलेखन अद्यतन प्राप्त करता है।<ref name="Release">{{Cite web|url=https://github.com/nodejs/Release|title=nodejs/Release|website=GitHub|language=en|access-date=2018-05-03}}</ref> एलटीएस वर्किंग ग्रुप नोड.जेएस फाउंडेशन की तकनीकी संचालन समिति के सहयोग से रणनीति और नीति का प्रबंधन करता है।
Node.js की नई प्रमुख रिलीज़ हर छह महीने में [[Index.php?title=गिटहब|गिटहब]] मुख्य शाखा से काटी जाती हैं। सम-संख्या वाले संस्करण अप्रैल में काटे जाते हैं और विषम-संख्या वाले संस्करण अक्टूबर में काटे जाते हैं। जब एक नया विषम संस्करण जारी किया जाता है, तो पिछला सम संस्करण [[दीर्घकालिक समर्थन]] के संक्रमण से गुजरता है, जो उस संस्करण को एलटीएस नामित होने की तारीख से 18 महीने का सक्रिय समर्थन देता है। इन 18 महीनों की समाप्ति के बाद, एलटीएस रिलीज़ को 12 महीने की अतिरिक्त रखरखाव सहायता प्राप्त होता है। एक सक्रिय संस्करण को वर्तमान रिलीज़ में आने के कुछ सप्ताह बाद परिवर्तनों के नॉन-ब्रेकिंग बैकपोर्ट प्राप्त होते हैं। एक रखरखाव रिलीज़ को केवल महत्वपूर्ण सुधार और दस्तावेज़ीकरण अद्यतन प्राप्त होते हैं।<ref name="Release">{{Cite web|url=https://github.com/nodejs/Release|title=nodejs/Release|website=GitHub|language=en|access-date=2018-05-03}}</ref> एलटीएस वर्किंग ग्रुप नोड.जेएस फाउंडेशन की तकनीकी संचालन समिति के सहयोग से रणनीति और नीति का प्रबंधन करता है।


== तकनीकी विवरण ==
== पारिभाषिक विवरण ==
Node.js एक जावास्क्रिप्ट रनटाइम वातावरण है जो आने वाले अनुरोधों को एक लूप में संसाधित करता है, जिसे इवेंट लूप कहा जाता है।
Node.js एक जावास्क्रिप्ट रनटाइम वातावरण है जो आने वाले अनुरोधों को एक लूप में संसाधित करता है, जिसे इवेंट लूप कहा जाता है।


=== आंतरिक ===
=== आंतरिक ===
Node.js अतुल्यकालिक घटनाओं को संभालने के लिए हुड के नीचे [[libuv]] का उपयोग करता है। लिबव विंडोज और [[पॉज़िक्स]]-आधारित सिस्टम जैसे लिनक्स, मैकओएस, ओएसएस ऑन [[नॉनस्टॉप (सर्वर कंप्यूटर)]] और यूनिक्स दोनों पर नेटवर्क और फाइल सिस्टम की कार्यक्षमता के लिए एक अमूर्त परत है। HTTP समर्थन के लिए Node.js [https://www.nghttp2.org nghttp2] पर निर्भर करता है। संस्करण 20 के अनुसार, Node.js [https://github.com/ada-url/ada ada लाइब्रेरी] का उपयोग करता है जो अप-टू-डेट [[WHATWG]] [[URL]] अनुपालन प्रदान करता है। [https://nodejs.org/en/blog/release/v19.5.0 संस्करण 19.5 के अनुसार], तेजी से यूनिकोड सत्यापन और ट्रांसकोडिंग के लिए Node.js [https://github.com/simdutf/simdutf/simdutf simdutf लाइब्रेरी] का उपयोग करता है .
Node.js अतुल्यकालिक घटनाओं को संभालने के लिए हुड के नीचे [[libuv]] का उपयोग करता है। लिबव विंडोज और [[पॉज़िक्स]]-आधारित सिस्टम जैसे लिनक्स, मैकओएस, ओएसएस ऑन [[Index.php?title=नॉनस्टॉप|नॉनस्टॉप]] और यूनिक्स दोनों पर नेटवर्क और फ़ाइल सिस्टम कार्यक्षमता के लिए एक अमूर्त परत है। HTTP समर्थन के लिए Node.js [https://www.nghttp2.org nghttp2] पर निर्भर करता है। संस्करण 20 के अनुसार, Node.js [https://github.com/ada-url/ada ada लाइब्रेरी] का उपयोग करता है जो अप-टू-डेट [[WHATWG]] [[URL]] अनुपालन प्रदान करता है। [https://nodejs.org/en/blog/release/v19.5.0 संस्करण 19.5 के अनुसार], तेजी से यूनिकोड सत्यापन और ट्रांसकोडिंग के लिए Node.js [https://github.com/simdutf/simdutf/simdutf simdutf लाइब्रेरी] का उपयोग करता है .


=== थ्रेडिंग ===
=== थ्रेडिंग ===
Node.js नॉन-ब्लॉकिंग I/O कॉल का उपयोग करते हुए [[सिंगल थ्रेडिंग]] | सिंगल-थ्रेड इवेंट लूप पर काम करता है, जिससे यह थ्रेड [[संदर्भ स्विच]]िंग की लागत के बिना हजारों समवर्ती कनेक्शनों का समर्थन करने की अनुमति देता है।<ref>{{cite web|url=http://blog.caustik.com/2012/08/19/node-js-w1m-concurrent-connections/|title=Node.js w/1M concurrent connections!|work=caustik's blog|date=19 August 2012}}</ref> [[पर्यवेक्षक पैटर्न]] का उपयोग करने वाले सभी अनुरोधों के बीच एक ही थ्रेड साझा करने का डिज़ाइन अत्यधिक समवर्ती अनुप्रयोगों के निर्माण के लिए है, जहां I/O प्रदर्शन करने वाले किसी भी फ़ंक्शन को कॉलबैक (कंप्यूटर प्रोग्रामिंग) का उपयोग करना चाहिए। सिंगल-थ्रेडेड इवेंट लूप को समायोजित करने के लिए, Node.js libuv लाइब्रेरी का उपयोग करता है - जो बदले में, एक निश्चित आकार के थ्रेड पूल का उपयोग करता है जो कुछ गैर-ब्लॉकिंग एसिंक्रोनस I/O संचालन को संभालता है।<ref name="readwrite" />
Node.js नॉन-ब्लॉकिंग I/O कॉल का उपयोग करते हुए [[सिंगल थ्रेडिंग]] इवेंट लूप पर काम करता है, जो इसे थ्रेड [[Index.php?title=संदर्भ स्विचिंग|संदर्भ स्विचिंग]] की लागत के बिना हजारों समवर्ती कनेक्शनों का समर्थन करने की अनुमति देता है।<ref>{{cite web|url=http://blog.caustik.com/2012/08/19/node-js-w1m-concurrent-connections/|title=Node.js w/1M concurrent connections!|work=caustik's blog|date=19 August 2012}}</ref> [[Index.php?title=ऑब्जर्वर पैटर्न|ऑब्जर्वर पैटर्न]] का उपयोग करने वाले सभी अनुरोधों के बीच एक एकल थ्रेड साझा करने का डिज़ाइन अत्यधिक समवर्ती अनुप्रयोगों के निर्माण के लिए है, जहां I/O करने वाले किसी भी फ़ंक्शन को कॉलबैक का उपयोग करना होगा। सिंगल-थ्रेडेड इवेंट लूप को समायोजित करने के लिए, Node.js libuv लाइब्रेरी का उपयोग करता है - जो बदले में, एक निश्चित आकार के थ्रेड पूल का उपयोग करता है जो कुछ गैर-अवरुद्ध एसिंक्रोनस I/O संचालन को संभालता है।<ref name="readwrite" />


एक थ्रेड पूल Node.js में समानांतर कार्यों के निष्पादन को संभालता है। मुख्य थ्रेड फ़ंक्शन कॉल कार्यों को साझा कार्य कतार में पोस्ट करता है, जो थ्रेड पूल में थ्रेड्स को खींचता है और निष्पादित करता है। स्वाभाविक रूप से नॉन-ब्लॉकिंग सिस्टम फ़ंक्शंस जैसे कि नेटवर्किंग कर्नेल-साइड नॉन-ब्लॉकिंग सॉकेट्स में अनुवाद करता है, जबकि अंतर्निहित सिस्टम फ़ंक्शंस जैसे फ़ाइल I / O अपने स्वयं के थ्रेड्स पर ब्लॉकिंग तरीके से चलता है। जब थ्रेड पूल में कोई थ्रेड किसी कार्य को पूरा करता है, तो यह इसके बारे में मुख्य थ्रेड को सूचित करता है, जो बदले में जागता है और पंजीकृत कॉलबैक निष्पादित करता है।
एक थ्रेड पूल Node.js में समानांतर कार्यों के निष्पादन को संभालता है। मुख्य थ्रेड फ़ंक्शन कॉल कार्यों को साझा कार्य कतार में पोस्ट करता है, जिसे थ्रेड पूल में थ्रेड खींचता है और निष्पादित करता है। नेटवर्किंग जैसे स्वाभाविक रूप से गैर-अवरुद्ध सिस्टम फ़ंक्शंस कर्नेल-साइड नॉन-ब्लॉकिंग सॉकेट में अनुवादित होते हैं, जबकि अंतर्निहित रूप से ब्लॉकिंग सिस्टम फ़ंक्शंस जैसे फ़ाइल I/O अपने स्वयं के थ्रेड्स पर अवरुद्ध तरीके से चलते हैं। जब थ्रेड पूल में कोई थ्रेड किसी कार्य को पूरा करता है, तो यह मुख्य थ्रेड को सूचित करता है, जो बदले में जागता है और पंजीकृत कॉलबैक निष्पादित करता है।


इस एकल-थ्रेडेड दृष्टिकोण का एक नकारात्मक पक्ष यह है कि Node.js किसी अतिरिक्त मॉड्यूल, जैसे क्लस्टर, का उपयोग किए बिना चल रहे मशीन के CPU कोर की संख्या में वृद्धि करके [[ऊर्ध्वाधर स्केलिंग]] की अनुमति नहीं देता है,<ref name="node_cluster_module_doc" />स्ट्रांगलूप प्रोसेस मैनेजर,<ref>{{Cite web|url=http://strong-pm.io/|title=स्ट्रांगलूप प्रोसेस मैनेजर|website=strong-pm.io}}</ref> या दोपहर 2.<ref>{{cite web|url=https://github.com/Unitech/pm2|title=GitHub - Unitech/pm2: Production process manager for Node.js applications with a built-in load balancer|work=GitHub|date=12 June 2021}}</ref> हालाँकि, डेवलपर libuv थ्रेड पूल में थ्रेड्स की डिफ़ॉल्ट संख्या बढ़ा सकते हैं। सर्वर [[ऑपरेटिंग सिस्टम]] | ऑपरेटिंग सिस्टम (OS) इन थ्रेड्स को कई कोर में वितरित करने की संभावना है।<ref>{{cite web|url=http://www.future-processing.pl/blog/on-problems-with-threads-in-node-js/|title=नोड.जेएस में थ्रेड्स के साथ समस्याओं पर - फ्यूचर प्रोसेसिंग|author=Aleksander Kasiuk|date=22 April 2015}}</ref> एक और समस्या यह है कि लंबे समय तक चलने वाली संगणनाएं और अन्य सीपीयू-बाउंड कार्य पूरा होने तक पूरे ईवेंट-लूप को फ्रीज कर देते हैं।{{citation needed|date=March 2017}}
इस एकल-थ्रेडेड दृष्टिकोण का नकारात्मक पहलू यह है कि Node.js क्लस्टर जैसे अतिरिक्त मॉड्यूल का उपयोग किए बिना जिस मशीन पर यह चल रहा है उसके सीपीयू कोर की संख्या में वृद्धि करके [[ऊर्ध्वाधर स्केलिंग]] की अनुमति नहीं देता है,<ref name="node_cluster_module_doc" /> स्ट्रॉन्गलूप प्रोसेस मैनेजर,<ref>{{Cite web|url=http://strong-pm.io/|title=स्ट्रांगलूप प्रोसेस मैनेजर|website=strong-pm.io}}</ref> या अपराह्न 2<ref>{{cite web|url=https://github.com/Unitech/pm2|title=GitHub - Unitech/pm2: Production process manager for Node.js applications with a built-in load balancer|work=GitHub|date=12 June 2021}}</ref> हालाँकि, डेवलपर्स libuv थ्रेड पूल में थ्रेड्स की डिफ़ॉल्ट संख्या बढ़ा सकते हैं। सर्वर [[ऑपरेटिंग सिस्टम]] (OS) द्वारा इन थ्रेड्स को कई कोर में वितरित करने की संभावना है।<ref>{{cite web|url=http://www.future-processing.pl/blog/on-problems-with-threads-in-node-js/|title=नोड.जेएस में थ्रेड्स के साथ समस्याओं पर - फ्यूचर प्रोसेसिंग|author=Aleksander Kasiuk|date=22 April 2015}}</ref> एक और समस्या यह है कि लंबे समय तक चलने वाली गणनाएं और अन्य सीपीयू-बाध्य कार्य पूरा होने तक पूरे इवेंट-लूप को रोक देते हैं।{{citation needed|date=March 2017}}


=== वी 8 ===
=== वी 8 ===

Revision as of 12:28, 27 June 2023

नोड.js
Original author(s)रयान डाहल
Developer(s)ओपनJS फाउंडेशन
Initial releaseMay 27, 2009; 16 years ago (2009-05-27)[1]
Stable release
Script error: The module returned a nil value. It is supposed to return an export table. / Script error: The module returned a nil value. It is supposed to return an export table.; Error: first parameter cannot be parsed as a date or time. (Script error: The module returned a nil value. It is supposed to return an export table.)
Written inC, C++, जावास्क्रिप्ट
Operating systemz/OS, लिनक्स,, मैक OS, माइक्रोसॉफ्ट विंडोज, स्मार्ट OS, फ्री BSD, ओपन BSD, IBM AIX[2]
TypeRuntime environment
LicenseMIT License[3][4]

नोड.js एक क्रॉस-प्लेटफॉर्म, ओपन-सोर्स सर्वर है। जो माइक्रोसॉफ़्ट विंडोज़, लिनक्स, यूनिक्स, मैक OS, और अन्य पर चल सकता है। Node.js एक बैक-एंड जावास्क्रिप्ट रनटाइम क्लाइमेट है, जो V8 जावास्क्रिप्ट इंजन पर चलता है, और एक वेब ब्राउज़र के बाहर जावास्क्रिप्ट कोड निष्पादित करता है।

Node.js डेवलपर्स को कमांड लाइन टूल लिखने और सर्वर-साइड स्क्रिप्टिंग के लिए जावास्क्रिप्ट का उपयोग करने देता है। सर्वर पर जावास्क्रिप्ट कोड चलाने की क्षमता का उपयोग अक्सर उपयोगकर्ता के वेब ब्राउज़र पर पेज भेजे जाने से पहले गतिशील वेब पेज सामग्री उत्पन्न करने के लिए किया जाता है। नतीजतन, Node.js एक "हर जगह जावास्क्रिप्ट" प्रतिमान का प्रतिनिधित्व करता है,[5] सर्वर बनाम क्लाइंट-साइड प्रोग्रामिंग के लिए विभिन्न भाषाओं का उपयोग करने के विपरीत, एक ही प्रोग्रामिंग भाषा के आसपास वेब-एप्लिकेशन विकास को एकीकृत करता है।

Node.js में एक इवेंट-संचालित आर्किटेक्चर है जो एसिंक्रोनस I/O में सक्षम है। इन डिज़ाइन विकल्पों का उद्देश्य कई इनपुट/आउटपुट संचालन के साथ-साथ वास्तविक समय वेब अनुप्रयोगों के साथ वेब अनुप्रयोगों में थ्रूपुट और स्केलेबिलिटी को अनुकूलित करना है।[6]

Node.js वितरित विकास परियोजना पहले Node.js फाउंडेशन द्वारा शासित थी,[7] और अब ओपन JS फाउंडेशन बनाने के लिए JS फाउंडेशन के साथ विलय कर दिया गया है। ओपन JS फाउंडेशन को लिनक्स फाउंडेशन के सहयोगात्मक परियोजना कार्यक्रम द्वारा सुविधा प्रदान की जाती है।[8]

Node.js सॉफ़्टवेयर के कॉर्पोरेट उपयोगकर्ताओं में गोडैडी,[9] ग्रूपन,[10] IBM,[11] लिंक्डइन,[12][13] माइक्रोसाफ्ट,[14][15] नेटफ्लिक्स,[16] पेपैल,[17][18] SAP[19] वॉल-मार्ट ,[20] याहू !,[21] और अमेज़ॅन वेब सर्विसेज शामिल हैं। [22]


इतिहास

File:Ryan Dahl.jpg
रयान डाहल, 2010 में Node.js के निर्माता

Node.js को शुरुआत में 2009 में रयान डाहल द्वारा लिखा गया था,[23] पहले सर्वर-साइड जावास्क्रिप्ट वातावरण, नेटस्केप के लाइववायर प्रो वेब की शुरुआत के लगभग तेरह साल बाद विकसित किया था।[24] प्रारंभिक रिलीज़ केवल Linux और Mac OS का समर्थन किया था।[25]

डाहल ने 2009 में सबसे लोकप्रिय वेब सर्वर,अपाचे HTTP सर्वर की सीमित संभावनाओं की आलोचना की, जिसमें बहुत सारे समवर्ती कनेक्शन (10,000 और अधिक तक) और कोड बनाने का सबसे आम तरीका (अनुक्रमिक प्रोग्रामिंग) को संभालने की क्षमता थी, जब कोड या तो अवरुद्ध हो जाता था। एक साथ कनेक्शन के मामले में संपूर्ण प्रक्रिया या निहित एकाधिक निष्पादन स्टैक है।[26]

डाहल ने 8 नवंबर 2009 को उद्घाटन यूरोपीय जेएसकॉन्फ में इस परियोजना का प्रदर्शन किया।[27][28][29] Node.js ने Google के Chrome V8 JavaScript इंजन, एक इवेंट लूप और एक निम्न-स्तरीय I/O अप्लिकेशन प्रोग्रामिंग अंतरफलक को संयोजित किया था।[30]

जनवरी 2010 में, Node.js वातावरण के लिए npm नामक एक पैकेज मैनेजर पेश किया गया था।[31] पैकेज प्रबंधक प्रोग्रामर्स के लिए Node.js पैकेजों के स्रोत कोड को प्रकाशित और साझा करना आसान बनाता है और इसे पैकेजों की स्थापना, अद्यतन और अनइंस्टॉलेशन को सरल बनाने के लिए डिज़ाइन किया गया है। [30]

जून 2011 में, माइक्रोसॉफ्ट और जॉयंट ने Node.js का एक देशी विंडोज़ संस्करण लागू किया।[33] विंडोज़ को सपोर्ट करने वाला पहला Node.js बिल्ड जुलाई 2011 में जारी किया गया था।

जनवरी 2012 में, डाहल ने परियोजना का प्रबंधन करने के लिए सहकर्मी और एनपीएम (सॉफ्टवेयर) निर्माता इसहाक श्लुएटर को बढ़ावा देते हुए पद छोड़ दिया था। [32] जनवरी 2014 में, श्लुएटर ने घोषणा की कि टिमोथी जे. फॉन्टेन इस परियोजना का नेतृत्व करेंगे।[33]

दिसंबर 2014 में, फेडर इंडुटनी ने io.js शुरू किया, जो Node.js का एक हिस्सा है। जॉयंट के शासन पर आंतरिक संघर्ष के कारण, io.js को एक अलग तकनीकी समिति के साथ एक खुले शासन विकल्प के रूप में बनाया गया था।[34][35] Node.js के विपरीत,[36] लेखकों ने io.js को Google V8 जावास्क्रिप्ट इंजन की नवीनतम रिलीज़ के साथ अद्यतन रखने की योजना बनाई है।[37]

फरवरी 2015 में, एक तटस्थ Node.js फाउंडेशन बनाने के इरादे की घोषणा की गई थी। जून 2015 तक, Node.js और io.js समुदायों ने Node.js फाउंडेशन के तहत एक साथ काम करने के लिए मतदान किया।[38]

सितंबर 2015 में, Node.js v0.12 और io.js v3.3 को वापस Node v4.0 में एक साथ मिला दिया गया।[39] इस विलय से Node.js में V8 ES6 सुविधाएँ और एक दीर्घकालिक समर्थन रिलीज़ चक्र लाया।[40] 2016 तक, io.js वेबसाइट अनुशंसा करती है कि डेवलपर्स Node.js पर वापस चले जाएं और मर्ज के कारण io.js की कोई और रिलीज़ की योजना नहीं बनाई गई है।[41]

2019 में, JS फाउंडेशन और Node.js फाउंडेशन का विलय होकर OpenJS फाउंडेशन बना गया।

15 मार्च 2023 को, Node.js 19.8.1 जारी किया गया था।[42]


अवलोकन

Node.js जावास्क्रिप्ट और "मॉड्यूल" के संग्रह का उपयोग करके वेब सर्वर और नेटवर्किंग टूल के निर्माण की अनुमति देता है जो विभिन्न मुख्य कार्यात्मकताओं को संभालते हैं।[27][30][43][44][45] फाइल सिस्टम I/O, नेटवर्किंग (DNS, HTTP, TCP, TLS/SSL, या UDP), बाइनरी डेटा, क्रिप्टोग्राफी फ़ंक्शंस, डेटा स्ट्रीम और अन्य मुख्य फ़ंक्शंस के लिए मॉड्यूल प्रदान किए जाते हैं।[30][44][46] Node.js के मॉड्यूल सर्वर अनुप्रयोगों को लिखने की जटिलता को कम करने के लिए डिज़ाइन किए गए एपीआई का उपयोग करते हैं।[30][44]

जावास्क्रिप्ट एकमात्र ऐसी भाषा है जिसका Node.js मूल रूप से समर्थन करता है, लेकिन कई कंपाइल-टू-JS लैंगुएजेस उपलब्ध हैं।[47] परिणामस्वरूप, Node.js अनुप्रयोगों को कॉफीस्क्रिप्ट,[48] डार्ट, टाइपस्क्रिप्ट, क्लोजरस्क्रिप्ट और अन्य में लिखा जा सकता है।

Node.js का उपयोग मुख्य रूप से वेब सर्वर जैसे नेटवर्क प्रोग्राम बनाने के लिए किया जाता है।[43] Node.js और PHP के बीच सबसे महत्वपूर्ण अंतर यह है कि PHP में अधिकांश फ़ंक्शन पूरा होने तक ब्लॉक होते हैं (कमांड पिछले कमांड समाप्त होने के बाद ही निष्पादित होते हैं), जबकि Node.js फ़ंक्शन नॉन-ब्लॉकिंग होते हैं (कमांड समवर्ती या समानांतर में भी निष्पादित होते हैं,[49][50] और पूर्णता या विफलता का संकेत देने के लिए कॉलबैक का उपयोग) करते है।[43]

Node.js आधिकारिक तौर पर Linux, macOS और Microsoft Windows 8.1 और सर्वर 2012 (और बाद में) पर समर्थित है,[2]SmartOS और IBM AIX के लिए टियर 2 समर्थन और FreeBSD के लिए प्रायोगिक समर्थन के साथ OpenBSD भी काम करता है, और LTS संस्करण IBM i (AS/400) के लिए उपलब्ध है।[51] प्रदान किया गया स्रोत कोड आधिकारिक तौर पर समर्थित ऑपरेटिंग सिस्टम के समान ऑपरेटिंग सिस्टम पर भी बनाया जा सकता है या नॉनस्टॉप ओएस[52] और यूनिक्स सर्वर जैसे अन्य का समर्थन करने के लिए तीसरे पक्ष द्वारा संशोधित किया जा सकता है।

प्लेटफार्म आर्किटेक्चर

Node.js वेब सर्वर पर इवेंट-संचालित प्रोग्रामिंग लाता है, जिससे जावास्क्रिप्ट में तेज वेब सर्वर का विकास संभव हो पाता है।[30] डेवलपर्स इवेंट-संचालित प्रोग्रामिंग के एक सरलीकृत मॉडल का उपयोग करके थ्रेडिंग का उपयोग किए बिना स्केलेबल सर्वर बना सकते हैं जो किसी कार्य के पूरा होने का संकेत देने के लिए कॉलबैक का उपयोग करता है।[30] Node.js एक स्क्रिप्टिंग भाषा (जावास्क्रिप्ट) की आसानी को यूनिक्स नेटवर्क प्रोग्रामिंग की शक्ति से जोड़ता है।[30]

Node.js को Google के V8 JavaScript इंजन के शीर्ष पर बनाया गया था क्योंकि यह BSD लाइसेंस के तहत ओपन-सोर्स किया गया था। यह HTTP, DNS और TCP जैसे इंटरनेट बुनियादी सिद्धांतों में कुशल है।[27] जावास्क्रिप्ट भी एक प्रसिद्ध भाषा थी, जिसने Node.js को वेब डेवलपर समुदाय के लिए सुलभ बना दिया था।[27]


उद्योग समर्थन

यहां Node.js के लिए हजारों ओपन-सोर्स लाइब्रेरी हैं, उनमें से अधिकांश एनपीएम वेबसाइट पर होस्ट की गई हैं। ऐसे कई डेवलपर सम्मेलन और कार्यक्रम हैं जो Node.js समुदाय का समर्थन करते हैं, जिनमें NodeConf, Node इंटरएक्टिव और नोड शिखर सम्मेलन के साथ-साथ कई क्षेत्रीय कार्यक्रम भी शामिल हैं।

ओपन-सोर्स समुदाय ने अनुप्रयोगों के विकास में तेजी लाने के लिए वेब फ्रेमवर्क विकसित किया है। इस तरह के फ्रेमवर्क में कनेक्ट, एक्सप्रेस.जेएस, सॉकेट.आईओ, फेदर्स.जेएस, कोआ.जेएस, हापी.जेएस, सेल्स.जेएस, मेटियोर, डर्बी और कई अन्य शामिल हैं।[30][53] अन्य भाषाओं या माइक्रोसॉफ्ट .NET जैसे रनटाइम वातावरण के साथ इंटरफेस करने के लिए विभिन्न पैकेज भी बनाए गए हैं।[54]

आधुनिक डेस्कटॉप आईडीई विशेष रूप से Node.js अनुप्रयोगों के लिए संपादन और डिबगिंग सुविधाएँ प्रदान करते हैं। ऐसे आईडीई में एटम, ब्रैकेट्स, जेटब्रेन्स MPS वेबस्टॉर्म,[55][56] माइक्रोसॉफ्ट विजुअल स्टूडियो[57] शामिल हैं।[58][59][60][61]) नेटबीन्स,[62] नोडेक्लिप्स एनाइड स्टूडियो[63] (एक्लिप्स-आधारित), और विजुअल स्टूडियो कोड[64][65] कुछ ऑनलाइन वेब-आधारित IDE भी Node.js का समर्थन करते हैं, जैसे Codeanywhere, Codenvy, Cloud9 IDE, Koding, और Node-RED में विजुअल फ्लो एडिटर है।

Node.js जेलास्टिक, गूगल क्लाउड प्लेटफ़ॉर्म, AWS इलास्टिक बीनस्टॉक, जॉयंट और अन्य जैसे कई क्लाउड-होस्टिंग प्लेटफ़ॉर्म पर समर्थित है।

लोकार्पण

रिलीस[66] स्टेटस कोड नेम रिलीज़ डेट मेंटेनेंस एन्ड
Old version, no longer maintained: 0.10.x Old version, no longer maintained: End-of-Life 2013-03-11 2016-10-31
Old version, no longer maintained: 0.12.x Old version, no longer maintained: End-of-Life 2015-02-06 2016-12-31
Old version, no longer maintained: 4.x Old version, no longer maintained: End-of-Life आर्गन[67] 2015-09-08 2018-04-30
Old version, no longer maintained: 5.x Old version, no longer maintained: End-of-Life 2015-10-29 2016-06-30
Old version, no longer maintained: 6.x Old version, no longer maintained: End-of-Life बोरोन[67] 2016-04-26 2019-04-30
Old version, no longer maintained: 7.x Old version, no longer maintained: End-of-Life 2016-10-25 2017-06-30
Old version, no longer maintained: 8.x Old version, no longer maintained: End-of-Life कार्बन[67] 2017-05-30 2019-12-31
Old version, no longer maintained: 9.x Old version, no longer maintained: End-of-Life 2017-10-01 2018-06-30
Old version, no longer maintained: 10.x Old version, no longer maintained: End-of-Life दुबनीम[67] 2018-04-24 2021-04-30
Old version, no longer maintained: 11.x Old version, no longer maintained: End-of-Life 2018-10-23 2019-06-01
Old version, no longer maintained: 12.x Old version, no longer maintained: End-of-Life अर्बियम[67] 2019-04-23 2022-04-30
Old version, no longer maintained: 13.x Old version, no longer maintained: End-of-Life 2019-10-22 2020-06-01
Older version, yet still maintained: 14.x Older version, yet still maintained: Maintenance LTS फेर्मियम[67] 2020-04-21 2023-04-30
Old version, no longer maintained: 15.x Old version, no longer maintained: End-of-Life 2020-10-20 2021-06-01
Older version, yet still maintained: 16.x Older version, yet still maintained: Maintenance LTS गैलियम[67] 2021-04-20 2023-09-11[68]
Old version, no longer maintained: 17.x Old version, no longer maintained: End-of-Life 2021-10-19 2022-06-01
Older version, yet still maintained: 18.x Older version, yet still maintained: Active LTS हाइड्रोजन[67] 2022-04-19 2025-04-30
Current stable version: 19.x Current stable version: Active 2022-10-18 2023-06-01
Future release: 20.x Future release: Current न्यू वर्शन[69] 2023-04-18 2026-04-30
Future release: 21.x Future release: Planned [67] 2023-10-17 2024-05-30
Future release: 22.x Future release: Planned [67] 2024-04-15 2027-04-28
Future release: 23.x Future release: Planned [67] 2024-10-14 2025-05-27
Legend:
Old version
Older version, still maintained
Latest version
Latest preview version
Future release

Node.js की नई प्रमुख रिलीज़ हर छह महीने में गिटहब मुख्य शाखा से काटी जाती हैं। सम-संख्या वाले संस्करण अप्रैल में काटे जाते हैं और विषम-संख्या वाले संस्करण अक्टूबर में काटे जाते हैं। जब एक नया विषम संस्करण जारी किया जाता है, तो पिछला सम संस्करण दीर्घकालिक समर्थन के संक्रमण से गुजरता है, जो उस संस्करण को एलटीएस नामित होने की तारीख से 18 महीने का सक्रिय समर्थन देता है। इन 18 महीनों की समाप्ति के बाद, एलटीएस रिलीज़ को 12 महीने की अतिरिक्त रखरखाव सहायता प्राप्त होता है। एक सक्रिय संस्करण को वर्तमान रिलीज़ में आने के कुछ सप्ताह बाद परिवर्तनों के नॉन-ब्रेकिंग बैकपोर्ट प्राप्त होते हैं। एक रखरखाव रिलीज़ को केवल महत्वपूर्ण सुधार और दस्तावेज़ीकरण अद्यतन प्राप्त होते हैं।[67] एलटीएस वर्किंग ग्रुप नोड.जेएस फाउंडेशन की तकनीकी संचालन समिति के सहयोग से रणनीति और नीति का प्रबंधन करता है।

पारिभाषिक विवरण

Node.js एक जावास्क्रिप्ट रनटाइम वातावरण है जो आने वाले अनुरोधों को एक लूप में संसाधित करता है, जिसे इवेंट लूप कहा जाता है।

आंतरिक

Node.js अतुल्यकालिक घटनाओं को संभालने के लिए हुड के नीचे libuv का उपयोग करता है। लिबव विंडोज और पॉज़िक्स-आधारित सिस्टम जैसे लिनक्स, मैकओएस, ओएसएस ऑन नॉनस्टॉप और यूनिक्स दोनों पर नेटवर्क और फ़ाइल सिस्टम कार्यक्षमता के लिए एक अमूर्त परत है। HTTP समर्थन के लिए Node.js nghttp2 पर निर्भर करता है। संस्करण 20 के अनुसार, Node.js ada लाइब्रेरी का उपयोग करता है जो अप-टू-डेट WHATWG URL अनुपालन प्रदान करता है। संस्करण 19.5 के अनुसार, तेजी से यूनिकोड सत्यापन और ट्रांसकोडिंग के लिए Node.js simdutf लाइब्रेरी का उपयोग करता है .

थ्रेडिंग

Node.js नॉन-ब्लॉकिंग I/O कॉल का उपयोग करते हुए सिंगल थ्रेडिंग इवेंट लूप पर काम करता है, जो इसे थ्रेड संदर्भ स्विचिंग की लागत के बिना हजारों समवर्ती कनेक्शनों का समर्थन करने की अनुमति देता है।[70] ऑब्जर्वर पैटर्न का उपयोग करने वाले सभी अनुरोधों के बीच एक एकल थ्रेड साझा करने का डिज़ाइन अत्यधिक समवर्ती अनुप्रयोगों के निर्माण के लिए है, जहां I/O करने वाले किसी भी फ़ंक्शन को कॉलबैक का उपयोग करना होगा। सिंगल-थ्रेडेड इवेंट लूप को समायोजित करने के लिए, Node.js libuv लाइब्रेरी का उपयोग करता है - जो बदले में, एक निश्चित आकार के थ्रेड पूल का उपयोग करता है जो कुछ गैर-अवरुद्ध एसिंक्रोनस I/O संचालन को संभालता है।[6]

एक थ्रेड पूल Node.js में समानांतर कार्यों के निष्पादन को संभालता है। मुख्य थ्रेड फ़ंक्शन कॉल कार्यों को साझा कार्य कतार में पोस्ट करता है, जिसे थ्रेड पूल में थ्रेड खींचता है और निष्पादित करता है। नेटवर्किंग जैसे स्वाभाविक रूप से गैर-अवरुद्ध सिस्टम फ़ंक्शंस कर्नेल-साइड नॉन-ब्लॉकिंग सॉकेट में अनुवादित होते हैं, जबकि अंतर्निहित रूप से ब्लॉकिंग सिस्टम फ़ंक्शंस जैसे फ़ाइल I/O अपने स्वयं के थ्रेड्स पर अवरुद्ध तरीके से चलते हैं। जब थ्रेड पूल में कोई थ्रेड किसी कार्य को पूरा करता है, तो यह मुख्य थ्रेड को सूचित करता है, जो बदले में जागता है और पंजीकृत कॉलबैक निष्पादित करता है।

इस एकल-थ्रेडेड दृष्टिकोण का नकारात्मक पहलू यह है कि Node.js क्लस्टर जैसे अतिरिक्त मॉड्यूल का उपयोग किए बिना जिस मशीन पर यह चल रहा है उसके सीपीयू कोर की संख्या में वृद्धि करके ऊर्ध्वाधर स्केलिंग की अनुमति नहीं देता है,[49] स्ट्रॉन्गलूप प्रोसेस मैनेजर,[71] या अपराह्न 2[72] हालाँकि, डेवलपर्स libuv थ्रेड पूल में थ्रेड्स की डिफ़ॉल्ट संख्या बढ़ा सकते हैं। सर्वर ऑपरेटिंग सिस्टम (OS) द्वारा इन थ्रेड्स को कई कोर में वितरित करने की संभावना है।[73] एक और समस्या यह है कि लंबे समय तक चलने वाली गणनाएं और अन्य सीपीयू-बाध्य कार्य पूरा होने तक पूरे इवेंट-लूप को रोक देते हैं।[citation needed]

वी 8

V8 जावास्क्रिप्ट निष्पादन इंजन है जिसे शुरुआत में Google Chrome के लिए बनाया गया था। इसे 2008 में Google द्वारा ओपन-सोर्स किया गया था। C++ में लिखा गया, V8 जावास्क्रिप्ट स्रोत कोड को मूल मशीन कोड में समय-समय पर संकलित करता है।[6] 2016 तक, इसमें इग्निशन, एक बायटेकोड दुभाषिया भी शामिल है।

पैकेज प्रबंधन

npm (सॉफ्टवेयर) Node.js सर्वर प्लेटफॉर्म के लिए पहले से इंस्टॉल पैकेज मैनेजर है। यह npm रजिस्ट्री से Node.js प्रोग्राम स्थापित करता है, तीसरे पक्ष के Node.js प्रोग्राम की स्थापना और प्रबंधन का आयोजन करता है। एनपीएम रजिस्ट्री में पैकेज सरल सहायक पुस्तकालयों जैसे लोदाश से लेकर टास्क रनर जैसे ग्रंट (सॉफ्टवेयर) तक हो सकते हैं।

एकीकृत एपीआई

Node.js को एक साइट के साथ एक ब्राउज़र के साथ जोड़ा जा सकता है, एक डेटाबेस जो JSON डेटा का समर्थन करता है (जैसे कि PostgreSQL,[74] MongoDB, या CouchDB) और JSON एक एकीकृत जावास्क्रिप्ट डेवलपमेंट स्टैक के लिए। मॉडल-व्यू-कंट्रोलर, मॉडल दृश्य प्रस्तुतकर्ता , मॉडल व्यू व्यू मॉडल आदि जैसे अनिवार्य रूप से सर्वर-साइड डेवलपमेंट पैटर्न के अनुकूलन के साथ, Node.js क्लाइंट साइड और सर्वर के बीच समान मॉडल और सर्विस इंटरफेस के कोड के पुन: उपयोग की अनुमति देता है। ओर।

इवेंट लूप

Node.js ऑपरेटिंग सिस्टम के साथ पंजीकृत होता है इसलिए OS इसे कनेक्शन के बारे में सूचित करता है और कॉलबैक जारी करता है। Node.js रनटाइम के भीतर, प्रत्येक कनेक्शन एक छोटा हीप आवंटन है। परंपरागत रूप से, अपेक्षाकृत भारी OS प्रक्रियाओं या थ्रेड्स ने प्रत्येक कनेक्शन को संभाला। प्रक्रियाओं या थ्रेड्स के बजाय, स्केलेबिलिटी के लिए Node.js इवेंट लूप का उपयोग करता है।[75] अन्य ईवेंट-संचालित सर्वरों के विपरीत, Node.js के ईवेंट लूप को स्पष्ट रूप से कॉल करने की आवश्यकता नहीं है। इसके बजाय, कॉलबैक परिभाषित किए गए हैं, और सर्वर स्वचालित रूप से कॉलबैक परिभाषा के अंत में इवेंट लूप में प्रवेश करता है। Node.js ईवेंट लूप से बाहर निकलता है जब आगे कोई कॉलबैक निष्पादित नहीं किया जाता है।

वेबअसेंबली

Node.js WebAssembly को सपोर्ट करता है और Node 14 के पास WebAssembly#WASI, WebAssembly सिस्टम इंटरफेस का प्रायोगिक समर्थन है।

मूल बंधन

Node.js C (प्रोग्रामिंग भाषा)-आधारित API के माध्यम से ऐड-ऑन बनाने का एक तरीका प्रदान करता है जिसे N-API कहा जाता है, जिसका उपयोग लोड करने योग्य (आयात करने योग्य) बनाने के लिए किया जा सकता है। .node C/C++ में लिखे सोर्स कोड से मॉड्यूल।[76] मॉड्यूल को सीधे मेमोरी में लोड किया जा सकता है और जेएस पर्यावरण के भीतर सरल कॉमनजेएस मॉड्यूल के रूप में निष्पादित किया जा सकता है। N-API का कार्यान्वयन आंतरिक C/C++ Node.js और V8 ऑब्जेक्ट्स पर निर्भर करता है, जिसके लिए उपयोगकर्ताओं को भाषा बाइंडिंग की आवश्यकता होती है (निर्देश शामिल करें|#शामिल हैं) Node.js विशिष्ट उनके मूल स्रोत कोड में निर्देश शामिल करें।[76]

जैसा कि Node.js API बाइनरी स्तर पर ब्रेकिंग परिवर्तनों के अधीन है, ठीक से काम करने के लिए मॉड्यूल को विशिष्ट Node.js संस्करणों के विरुद्ध बनाया और शिप किया जाना है। समस्या का समाधान करने के लिए, तीसरे पक्ष ने एपीआई के शीर्ष पर खुले स्रोत वाले С/С++ रैपर पेश किए हैं जो आंशिक रूप से समस्या को कम करते हैं। वे इंटरफेस को सरल करते हैं, लेकिन एक साइड इफेक्ट के रूप में वे जटिलता भी पेश कर सकते हैं जिससे अनुरक्षकों को निपटना पड़ता है। भले ही Node.js की मुख्य कार्यक्षमता जावास्क्रिप्ट बिल्ट-इन लाइब्रेरी में रहती है, C++ में लिखे गए मॉड्यूल का उपयोग क्षमताओं को बढ़ाने और अनुप्रयोगों के प्रदर्शन को बेहतर बनाने के लिए किया जा सकता है।

इस तरह के मॉड्यूल बनाने के लिए एक उपयुक्त सी ++ कंपाइलर और आवश्यक हेडर (बाद वाले आमतौर पर नोड.जेएस के साथ भेज दिए जाते हैं) की आवश्यकता होती है, उदाहरण के लिए, जीसीसी संकलक , बजना या माइक्रोसॉफ्ट विजुअल सी ++ ++ | एमएसवीसी ++।

एन-एपीआई जावा मूल इंटरफ़ेस के समान है।

प्रोजेक्ट गवर्नेंस

2015 में, बड़े नोड.जेएस समुदाय की विभिन्न शाखाओं ने वेंडर-न्यूट्रल नोड.जेएस फाउंडेशन के तहत काम करना शुरू किया। संगठन का घोषित उद्देश्य एक खुले शासन मॉडल के माध्यम से नोड.जेएस और अन्य संबंधित मॉड्यूल के विकास में तेजी लाने में मदद करना है जो भागीदारी, तकनीकी योगदान और नोड में निवेशित पारिस्थितिकी तंत्र द्वारा दीर्घकालिक प्रबंधन के लिए एक रूपरेखा को प्रोत्साहित करता है। जेएस की सफलता।[77] Node.js Foundation तकनीकी संचालन समिति (TSC) Node.js Foundation की तकनीकी शासी निकाय है। TSC कोर Node.js रेपो के साथ-साथ निर्भर और आसन्न परियोजनाओं के लिए जिम्मेदार है। आम तौर पर टीएससी इन परियोजनाओं के प्रशासन को कार्यकारी समूहों या समितियों को सौंपता है।[78] LTS समूह जो दीर्घकालिक समर्थित रिलीज़ का प्रबंधन करता है, ऐसा ही एक समूह है। अन्य वर्तमान समूहों में वेबसाइट, स्ट्रीम, बिल्ड, डायग्नोस्टिक्स, i18n, इंजीलवाद, डॉकर, एडऑन एपीआई, बेंचमार्किंग, पोस्ट-मॉर्टम, इंटल, डॉक्यूमेंटेशन और टेस्टिंग शामिल हैं।[79] अगस्त 2017 में, परियोजना की आचार संहिता से संबंधित विवाद के कारण टीएससी के एक तिहाई सदस्यों ने इस्तीफा दे दिया।[80]


यह भी देखें

  • डेनो (सॉफ्टवेयर)—जावास्क्रिप्ट और टाइपस्क्रिप्ट के लिए एक बैक-एंड रनटाइम वातावरण, जिसे रयान डाहल द्वारा भी बनाया गया है।

संदर्भ

  1. "node-v0.x-archive on GitHub". GitHub. Retrieved 2 August 2014.
  2. 2.0 2.1 "nodejs/node". GitHub. 13 April 2022.
  3. "node/LICENSE at master". GitHub. Node.js Foundation. 17 September 2018. Retrieved 17 September 2018.
  4. "The MIT License". Open Source Initiative. 17 September 2018. Retrieved 17 September 2018.
  5. gcuomo (24 October 2013). "जावास्क्रिप्ट हर जगह और तीन एमिगोस (जंगली नीले रंग में!)". www.ibm.com. Retrieved 24 October 2013.
  6. 6.0 6.1 6.2 Laurent Orsini (7 November 2013). "आपको नोड.जेएस के बारे में क्या जानने की आवश्यकता है". readwrite.com. Retrieved 6 February 2022.
  7. "नोड.जेएस फाउंडेशन - नोड.जेएस". nodejs.org. Retrieved 4 July 2015.
  8. "लिनक्स फाउंडेशन सहयोगी परियोजनाएं". linuxfoundation.org. 4 July 2015. Retrieved 4 July 2015.
  9. Why GoDaddy's Nodejitsu deal is great for Node.js, VentureBeat, 10 February 2015
  10. Geitgey, Adam (30 October 2013). "I-Tier: Dismantling the Monoliths". Groupon. Archived from the original on 10 September 2015. Retrieved 30 April 2014.
  11. "आईबीएम ब्लूमिक्स". IBM. Retrieved 4 July 2015.
  12. "आप कभी विश्वास नहीं करेंगे कि लिंक्डइन ने अपना नया iPad ऐप कैसे बनाया". VentureBeat. 2 May 2012. Retrieved 10 May 2012.
  13. "Blazing fast node.js: 10 performance tips from LinkedIn Mobile". Retrieved 7 April 2015.
  14. Baxter-Reynolds, Matthew (9 November 2011). "यही कारण है कि आपको खुश होना चाहिए कि Microsoft Node.js को अपना रहा है". The Guardian. London. Retrieved 10 May 2012.
  15. "WebMatrix - फ्रंट एंड वेब डेवलपर्स ध्यान दें (ASP.NET, PHP, node.js और अधिक)". Retrieved 2 August 2014.
  16. Node.js in Flames 19 November 2014
  17. "Clash of the Titans: Releasing the Kraken, NodeJS @paypal". fluentconf.com. 28 May 2013. Archived from the original on 15 December 2021. Retrieved 11 September 2013.
  18. "ऐसी सभी कंपनियाँ और उनके उत्पाद जिनमें Node.js का उपयोग किया जाता है". GitHub. Retrieved 2 August 2014.
  19. "एसएपी ऐपबिल्डर". SAP. 10 March 2014. Archived from the original on 12 February 2014. Retrieved 10 October 2018.
  20. "वॉलमार्ट Node.js का उपयोग क्यों कर रहा है". VentureBeat. 24 January 2012. Retrieved 10 May 2012.
  21. "आपको वास्तव में क्यों चाहिए (ए) नोड.जेएस विकास सेवाएं". codebrahma. 10 January 2018. Retrieved 10 January 2018.
  22. "Node.js वेब ऐप तैनात करें - AWS पर अत्यधिक उपलब्ध Node.js वेब एप्लिकेशन लॉन्च करें और चलाएं". amazon.com. Retrieved 3 October 2020.
  23. "About Node.js, and why you should add Node.js to your skill set?". Training.com. Training.com. 11 September 2016. Retrieved 23 October 2016.
  24. Staff, CNET News (15 October 1996). "नेटस्केप इंट्रानेट हमले को खोलता है". CNET (in English). Retrieved 20 April 2017.
  25. Ryan Dahl (9 November 2010). "जॉयंट और नोड". Google Groups. Retrieved 5 February 2015.
  26. Garbar, Dzmitry. "PHP 7 vs Node.js? They Can Be Partners, Not Competitors For a Developer!". belitsoft.com. Retrieved 21 December 2016.
  27. 27.0 27.1 27.2 27.3 Sams Teach Yourself Node.js in 24 Hours, Sams Publishing, 05-Sep-2012
  28. Ubl, Malte (9 September 2009). "JSConf.eu 2009, Berlin, Germany". www.jsconf.eu. Retrieved 9 September 2009.
  29. "Ryan Dahl: Original Node.js presentation". Archived from the original on 15 December 2021 – via www.youtube.com.
  30. 30.0 30.1 30.2 30.3 30.4 30.5 30.6 30.7 30.8 Professional Node.js: Building JavaScript Based Scalable Software, John Wiley & Sons, 01-Oct-2012
  31. "एनपीएम की सबसे पुरानी रिलीज". GitHub. Retrieved 27 July 2016.
  32. Dahl, Ryan. "नया द्वारपाल". Retrieved 26 October 2013.
  33. Schlueter, Isaac (15 January 2014). "Node.js का अगला चरण". Retrieved 21 January 2014.
  34. Krill, Paul (4 December 2014). "क्यों io.js ने फोर्क नोड.जेएस का फैसला किया". JavaWorld. Retrieved 15 December 2014.
  35. Q&A: Why io.js decided to fork Node.js, InfoWorld Tech Watch
  36. Ben Noordhuis (12 November 2014). "Issue 3692: function suddenly becomes undefined". V8 JavaScript Engine Issues. Retrieved 2 February 2015.
  37. Mikeal, Rogers (28 January 2015). "io.js की स्थिति". Retrieved 2 February 2015.
  38. "Node.js फाउंडेशन सामुदायिक सहयोग को आगे बढ़ाता है, नए सदस्यों की घोषणा करता है और तकनीकी प्रशासन की पुष्टि करता है". Archived from the original on 24 June 2015. Retrieved 4 July 2015.
  39. "Node.js Foundation नई रिलीज में Node.js और io.js को सिंगल कोडबेस में जोड़ता है". nodejs.org. 14 September 2015. Retrieved 28 January 2016.
  40. "io.js और Node.js विलय". medium.com. 19 May 2015. Retrieved 27 June 2015.
  41. Io.js, JavaScript I/O, "io.js has merged with the Node.js project again. There won't be any further io.js releases. All of the features in io.js are available in Node.js v4 and above."
  42. "पिछला विज्ञप्ति". Node.js.
  43. 43.0 43.1 43.2 Node.js for PHP Developers, O'Reilly Media, Inc., 2013
  44. 44.0 44.1 44.2 Node.js Essentials, Packt Publishing, 10-Nov-2015
  45. Smashing Node.js: JavaScript Everywhere, John Wiley & Sons, 14-Aug-2012
  46. Modules, Nodejs Website
  47. "जेएस को संकलित करने वाली भाषाओं की सूची". Github.
  48. Node.js पर CoffeeScript. O'Reilly Media, Inc. 15 April 2013. ISBN 9781449316846. Retrieved 17 May 2015.
  49. 49.0 49.1 "Node.js क्लस्टर मॉड्यूल". nodejs.org. Retrieved 19 October 2017.
  50. "Node.js's child_process module". nodejs.org. Retrieved 19 October 2017.
  51. Foundation, Node js. "पैकेज मैनेजर के माध्यम से Node.js इंस्टॉल करना". Node.js (in English). Retrieved 19 May 2019.
  52. "बॉमबोरा - नॉनस्टॉप के लिए Node.js". infrasoft.com.au. Infrasoft. Retrieved 14 August 2015.
  53. Express.js Guide: The Comprehensive Book on Express.js, Azat Mardan, 28-May-2014
  54. Edge.js bridges the gap between Node.js and .NET, TechRepublic, Tony Patton, 1 July 2014
  55. Node.js, WebStorm supports integration with the Node.js runtime environment, WebStorm Help
  56. Running and Debugging Node.js, WebStorm Help
  57. "विजुअल स्टूडियो के लिए Node.js टूल्स". microsoft.com. Retrieved 1 February 2016.
  58. soywiz/typescript-node-definitions TypeScript's typings for some popular node.js modules, GitHub
  59. DefinitelyTyped, GitHub
  60. "उच्च गुणवत्ता वाले टाइपस्क्रिप्ट प्रकार की परिभाषाओं के लिए भंडार". definitelytyped.org. Archived from the original on 3 February 2016.
  61. ImageBoard, A Node.js + Express + MongoDB application built using TypeScript on the server, TypeScript Samples
  62. Krill, Paul (10 November 2015). "Node.js takes center stage in NetBeans 8.1". infoworld.com. InfoWorld. Retrieved 10 November 2015.
  63. Nodeclipse, Enide -- Node.JS development in Eclipse, Nodeclipse Website
  64. Hello Visual Studio Code (with NodeJS), Channel 9, Microsoft
  65. Node.js Applications with VS Code, Visual Studio Code
  66. "Releases". Node.js.
  67. 67.00 67.01 67.02 67.03 67.04 67.05 67.06 67.07 67.08 67.09 67.10 67.11 "nodejs/Release". GitHub (in English). Retrieved 3 May 2018.
  68. Bringing forward the End-of-Life Date for Node.js 16, Node.js Website
  69. "Node.js 20: Latest Features and Enhancements". Radixweb (in English). Retrieved 20 April 2023.
  70. "Node.js w/1M concurrent connections!". caustik's blog. 19 August 2012.
  71. "स्ट्रांगलूप प्रोसेस मैनेजर". strong-pm.io.
  72. "GitHub - Unitech/pm2: Production process manager for Node.js applications with a built-in load balancer". GitHub. 12 June 2021.
  73. Aleksander Kasiuk (22 April 2015). "नोड.जेएस में थ्रेड्स के साथ समस्याओं पर - फ्यूचर प्रोसेसिंग".
  74. "PostgreSQL: Documentation: 9.4: JSON Types". www.postgresql.org. Retrieved 20 October 2016.
  75. About Node.js, Node.js Website
  76. 76.0 76.1 "C++ addons | Node.js v14.12.0 Documentation". nodejs.org. Retrieved 26 September 2020.
  77. Foundation, Node.js. "Node.js Foundation | Node.js". nodejs.org (in English). Retrieved 8 March 2017.
  78. "nodejs/TSC". GitHub (in English). Retrieved 8 March 2017.
  79. Foundation, Node.js. "Working Groups | Node.js". nodejs.org (in English). Retrieved 8 March 2017.
  80. Whittaker, Zack, After governance breakdown, Node.js leaders fight for its survival, ZDNet, 25 August 2017


अग्रिम पठन


बाहरी संबंध

  • No URL found. Please specify a URL here or add one to Wikidata.
  • node on GitHub