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

Node.js 18.0 በጃቫስክሪፕት ውስጥ የኔትወርክ አፕሊኬሽኖችን ለማስኬድ የሚያስችል መድረክ ተለቀቀ። Node.js 18.0 እንደ የረጅም ጊዜ የድጋፍ ቅርንጫፍ ተመድቧል፣ ነገር ግን ይህ ሁኔታ ከተረጋጋ በኋላ በጥቅምት ወር ብቻ ይመደባል። Node.js 18.x እስከ ኤፕሪል 2025 ድረስ ይደገፋል። የNode.js 16.x የቀድሞ LTS ቅርንጫፍ ጥገና እስከ ኤፕሪል 2024 እና ካለፈው LTS ቅርንጫፍ 14.x በፊት ያለው አመት እስከ ኤፕሪል 2023 ድረስ ይቆያል። የ12.x LTS ቅርንጫፍ ኤፕሪል 30 ይቋረጣል፣ እና Node.js 17.x የማዘጋጃ ቅርንጫፍ ሰኔ 1 ላይ ይቋረጣል።

ዋና ማሻሻያዎች፡-

  • የV8 ኤንጂን በChromium 10.1 ጥቅም ላይ ወደሚውለው ስሪት 101 ተዘምኗል። ከNode.js 17.9.0 መለቀቅ ጋር ሲነጻጸር፣ አሁን ከመጨረሻው አንጻር ንጥረ ነገሮችን ለማግኘት እንደ FindLast እና FindLastIndex ላሉ ባህሪያት ድጋፍ አለ። አንድ ድርድር፣ እና Intl.supportedValuesOf ተግባር። የተሻሻለ Intl.Locale API የክፍል መስኮችን እና የግል ዘዴዎችን መጀመር ተፋጥኗል.
  • የሙከራ ማምጣት() ኤፒአይ በነባሪነት ነቅቷል፣ በአውታረ መረቡ ላይ ሀብቶችን ለመጫን የተነደፈ። አተገባበሩ ከኤችቲቲፒ/1.1 undici ደንበኛ በተገኘ ኮድ ላይ የተመሰረተ እና በተቻለ መጠን በአሳሾች ውስጥ ከሚቀርበው ተመሳሳይ ኤፒአይ ጋር ነው። ይህ የኤችቲቲፒ ጥያቄን እና የምላሽ ራስጌዎችን ለመቆጣጠር የFormData፣ Headers፣ Request እና ምላሽ በይነ ገጽ ድጋፍን ያካትታል። const res = መጥቶ ይጠብቁ ('https://nodejs.org/api/documentation.json'); ከሆነ (res.ok) {const data = res.json ይጠብቁ (); console.log (ዳታ); }
  • በአውታረ መረቡ ላይ የተቀበሏቸው የውሂብ ዥረቶች መዳረሻን በመስጠት የድረ-ገጽ ዥረቶች ኤፒአይ የሙከራ ትግበራ ታክሏል። ሙሉው ፋይል እስኪወርድ ድረስ ኤፒአይ መረጃው በአውታረ መረቡ ላይ ሲደርስ ከውሂብ ጋር ለመስራት የራስዎን ተቆጣጣሪዎች ለመጨመር ያስችላል። አሁን በ Node.js የሚገኙት ነገሮች ReadableStream*፣ TransformStream*፣ WritableStream*፣ TextEncoderStream፣ TextDecoderStream፣ CompressionStream እና DecompressionStream ያካትታሉ።
  • የብሎብ ኤፒአይ ወደ መረጋጋት ተወስዷል፣ ይህም የማይለዋወጥ ጥሬ መረጃን በተለያዩ የሰራተኛ ክሮች ውስጥ ደህንነቱ በተጠበቀ መልኩ ለመጠቀም ያስችላል።
  • የብሮድካስት ቻናል ኤፒአይ የተረጋጋ እንዲሆን ተደርጓል፣ ይህም የመልእክቶችን ልውውጥ በማይመሳሰል ሁነታ በ “አንድ ላኪ - ብዙ ተቀባዮች” ቅርጸት እንዲያደራጁ ያስችልዎታል።
  • የታከለ የሙከራ ሞጁል መስቀለኛ መንገድ፡በጃቫ ስክሪፕት ውስጥ ሙከራዎችን ለመፍጠር እና ለማሄድ ሙከራ በTAP (Test Anything Protocol) ቅርጸት።
  • ለ Red Hat Enterprise Linux (RHEL) 8 እና ሌሎች በGlibc 2.28+ ላይ የተመሠረቱ ዲቢያን 10 እና ኡቡንቱ 20.04 እንዲሁም ለ macOS 10.15+ ላይ የተመሰረቱ ማከፋፈያዎች ዝግጁ የሆኑ ስብሰባዎችን ማፍለቅ ቀርቧል። በ V8 ሞተር ግንባታ ላይ ባሉ ችግሮች ምክንያት ለዊንዶውስ 32 ቢት ግንባታዎች መፈጠር ለጊዜው ቆሟል።
  • ጅምር ላይ በተጀመረው በተጠቃሚ ከተመረጡት ክፍሎች ጋር Node.js የሚሰራ የሙከራ አማራጭ ቀርቧል። የመነሻ ክፍሎችን ለመወሰን የ "- node-snapshot-main" አማራጭ ወደ ማዋቀር ግንባታ ስክሪፕት ተጨምሯል, ለምሳሌ "./configure -node-snapshot-main=marked.js; ስም አንጓ"

የ 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

አስተያየት ያክሉ