የአገልጋይ ጎን JavaScript መድረክ Node.js 19.0 ይገኛል።

Node.js 19.0 በጃቫስክሪፕት ውስጥ የኔትወርክ አፕሊኬሽኖችን ለማሄድ የሚያስችል መድረክ ተለቀቀ። Node.js 19 እስከ ሰኔ 2023 ድረስ ዝማኔዎች ያሉት መደበኛ የድጋፍ ቅርንጫፍ ነው። በመጪዎቹ ቀናት የNode.js 18 ቅርንጫፍ ማረጋጋት ይጠናቀቃል፣ ይህም የLTS ሁኔታን የሚቀበል እና እስከ ኤፕሪል 2025 ድረስ የሚደገፍ ይሆናል። የNode.js 16.0 የቀድሞ LTS ቅርንጫፍ ጥገና እስከ ሴፕቴምበር 2023 ድረስ እና ካለፈው LTS ቅርንጫፍ 14.0 በፊት ባለው አመት እስከ ኤፕሪል 2023 ድረስ ይቆያል።

ዋና ማሻሻያዎች፡-

  • የV8 ኤንጂን ወደ ስሪት 10.7 ተዘምኗል፣ በChromium 107 ጥቅም ላይ ይውላል። በሞተሩ ላይ ከተደረጉት ለውጦች መካከል ከ Node.js 18 ቅርንጫፍ ጋር ሲነጻጸር፣ የ Intl.NumberFormat ኤፒአይ ሶስተኛው ስሪት መተግበሩን ተጠቅሷል፣ ይህም አዲስ ተግባራትን የሚጨምር ቅርጸት ክልልን ይጨምራል። () formatRangeToParts() እና ምረጥ ክልል()፣ ስብስቦችን ማቧደን፣ ለማጠጋጋት እና ትክክለኛነትን ለማቀናበር አዳዲስ አማራጮች፣ ሕብረቁምፊዎችን እንደ አስርዮሽ ቁጥሮች የመተርጎም ችሎታ። የተካተቱት ጥገኞች lhttp 8.1.0 እና npm 8.19.2 እንዲሁ ተዘምነዋል።
  • ከውጭ የመጣው ፋይል ሲቀየር ሂደቱ እንደገና መጀመሩን የሚያረጋግጥ የሰዓት ሁነታን በመተግበር የሙከራ "node -watch" ትዕዛዝ ቀርቧል (ለምሳሌ "node -watch index.js" ከተፈጸመ ሂደቱ ይከናወናል. index.js ሲቀየር በራስ-ሰር እንደገና ይጀምራል)።
  • ለሁሉም ወጪ ኤችቲቲፒ/ኤችቲቲፒኤስ ግንኙነቶች፣ የ HTTP 1.1 Keep-Alive ዘዴ ድጋፍ ነቅቷል፣ ይህም ግንኙነቱ ለተወሰነ ጊዜ ክፍት ሆኖ በርካታ የኤችቲቲፒ ጥያቄዎችን በተመሳሳይ ግንኙነት ለማስኬድ ይተወዋል። Keep-Alive ውፅዓት እና አፈጻጸምን እንደሚያሻሽል ይጠበቃል። በነባሪ የግንኙነቱ ክፍት ጊዜ ማብቂያ ወደ 5 ሰከንድ ተቀናብሯል። በአገልጋይ ምላሾች ውስጥ የ Keep-Alive HTTP ራስጌን ለመተንተን ድጋፍ ወደ ኤችቲቲፒ ደንበኛ አተገባበር ታክሏል፣ እና Keep-Aliveን በመጠቀም የቦዘኑ ደንበኞችን በራስ-ሰር ማቋረጥ ወደ Node.js HTTP አገልጋይ ትግበራ ታክሏል።
  • Ed25519፣ Ed448፣ X25519 እና X448 ስልተ ቀመሮችን ከሚጠቀሙ ተግባራት በስተቀር የዌብክሪፕቶ ኤፒአይ ወደ የተረጋጋ ምድብ ተላልፏል። የዌብክሪፕቶ ሞጁሉን ለመድረስ አሁን globalThis.crypto መጠቀም ወይም ጠይቅ('node:crypto') ዌብክሪፕቶ መጠቀም ትችላለህ።
  • ለDTrace፣ SystemTap እና ETW (Event Tracing for Windows) የመፈለጊያ መሳሪያዎች ድጋፍ ተወግዷል፣ ትክክለኛ የድጋፍ እቅድ በሌለበት ጊዜ ወቅቱን ጠብቆ ማቆየት ባለው ውስብስብነት ምክንያት ጥገናቸው ተገቢ እንዳልሆነ ተቆጥሯል።

የ Node.js መድረክ ለድር መተግበሪያዎች አገልጋይ ጥገና እና መደበኛ የደንበኛ እና የአገልጋይ አውታረ መረብ ፕሮግራሞችን ለመፍጠር ሁለቱንም ሊያገለግል ይችላል። ለ Node.js አፕሊኬሽኖች ተግባራዊነትን ለማስፋት ብዙ የሞጁሎች ስብስብ ተዘጋጅቷል ፣ በዚህ ውስጥ የኤችቲቲፒ ፣ SMTP ፣ XMPP ፣ ዲ ኤን ኤስ ፣ ኤፍቲፒ ፣ IMAP ፣ POP3 አገልጋዮች እና ደንበኞች ፣ ውህደቶች ሞጁሎችን ማግኘት ይችላሉ ። በተለያዩ የድር ማዕቀፎች ፣ WebSocket እና Ajax ተቆጣጣሪዎች ፣ DBMS ማገናኛዎች (MySQL ፣ PostgreSQL ፣ SQLite ፣ MongoDB) ፣ ቴምፕሊንግ ሞተሮች ፣ CSS ሞተሮች ፣ የ crypto ስልተ ቀመሮች እና የፈቀዳ ስርዓቶች (OAuth) አተገባበር ፣ ኤክስኤምኤል ተንታኞች።

በርካታ ቁጥር ያላቸው ትይዩ ጥያቄዎችን ማስተናገድን ለማረጋገጥ፣ Node.js በማይከለከል የክስተት አያያዝ እና የመልሶ መደወያ ተቆጣጣሪዎች ትርጉም ላይ የተመሰረተ ያልተመሳሰለ ኮድ ማስፈጸሚያ ሞዴልን ይጠቀማል። ብዙ ግንኙነቶችን ለማገናኘት የሚደገፉ ዘዴዎች epoll, kqueue, /dev/poll እና ይምረጡ. ለግንኙነት ማባዛት፣ የሊቡቭ ቤተ-መጽሐፍት ጥቅም ላይ ይውላል፣ ይህም በዩኒክስ ሲስተምስ ላይ ለሊቭቭ እና በዊንዶውስ ላይ IOCP ነው። የሊቤዮ ቤተ-መጽሐፍት የክር ገንዳ ለመፍጠር ይጠቅማል፣ እና c-ares የተዋሃደው የዲ ኤን ኤስ መጠይቆችን በማይታገድ ሁነታ ነው። እገዳን የሚፈጥሩ ሁሉም የስርዓት ጥሪዎች በክር ገንዳ ውስጥ ይከናወናሉ ከዚያም ልክ እንደ ሲግናል ተቆጣጣሪዎች የስራቸውን ውጤት ባልታወቀ ቧንቧ (ቧንቧ) መልሰው ያስተላልፋሉ። የጃቫስክሪፕት ኮድ ማስፈጸሚያ የሚቀርበው በጎግል በተዘጋጀው የቪ8 ኢንጂን በመጠቀም ነው (በተጨማሪም ማይክሮሶፍት የ Node.js ስሪት ከቻክራ-ኮር ሞተር ጋር እያዘጋጀ ነው።)

በዋናው ላይ፣ Node.js ከፐርል AnyEvent፣ Ruby Event Machine፣ Python Twisted frameworks እና Tcl ክስተት አተገባበር ጋር ተመሳሳይ ነው፣ ነገር ግን በ Node.js ውስጥ ያለው የክስተት ምልልስ ከገንቢው የተደበቀ እና በሚሰራ የድር መተግበሪያ ውስጥ የክስተት አያያዝን ይመስላል። በአሳሽ ውስጥ. ለ node.js ማመልከቻዎችን በሚጽፉበት ጊዜ የክስተት-ተኮር ፕሮግራሞችን ልዩ ሁኔታዎች ግምት ውስጥ ማስገባት አለብዎት, ለምሳሌ "var result = db.query("select..") ከማድረግ ይልቅ. ሥራውን ለማጠናቀቅ እና ውጤቱን ለማስኬድ በመጠባበቅ ፣ Node.js ያልተመሳሰለ የአፈፃፀም መርህን ይጠቀማል ፣ ማለትም። ኮዱ ወደ "db.query("ይምረጡ.."፣ ተግባር (ውጤት) {ውጤት ማቀናበር}) ተቀይሯል፣ በዚህ ውስጥ መቆጣጠሪያው ወዲያውኑ ወደ ተጨማሪ ኮድ ያልፋል፣ እና የጥያቄው ውጤት ውሂብ እንደደረሰ ይከናወናል።

ምንጭ: opennet.ru

አስተያየት ያክሉ