Server-side JavaScript වේදිකාව Node.js 19.0 ඇත

Node.js 19.0, JavaScript හි ජාල යෙදුම් ධාවනය සඳහා වේදිකාවක් නිකුත් කරන ලදී. Node.js 19 යනු 2023 ජූනි දක්වා යාවත්කාලීන ලබා ගත හැකි නිත්‍ය ආධාරක ශාඛාවකි. ඉදිරි දිනවලදී, Node.js 18 ශාඛාවේ ස්ථායීකරණය අවසන් වනු ඇත, එය LTS තත්ත්වය ලබා ගන්නා අතර 2025 අප්‍රේල් දක්වා සහය දක්වයි. Node.js 16.0 හි පෙර LTS ශාඛාව නඩත්තු කිරීම 2023 සැප්තැම්බර් දක්වාත්, අවසාන LTS ශාඛාව 14.0 ට පෙර වසර 2023 අප්‍රේල් දක්වාත් පවතිනු ඇත.

ප්රධාන වැඩිදියුණු කිරීම්:

  • V8 එන්ජිම Chromium 10.7 හි භාවිතා කරන ලද 107 අනුවාදයට යාවත්කාලීන කර ඇත. Node.js 18 ශාඛාව හා සසඳන විට එන්ජිමේ වෙනස්කම් අතර, Intl.NumberFormat API හි තුන්වන අනුවාදය ක්‍රියාත්මක කිරීම සටහන් කර ඇති අතර එමඟින් නව කාර්යයන් formatRange එකතු කරයි. (), formatRangeToParts() සහ selectRange(), කට්ටල සමූහගත කිරීම, වටකුරු කිරීම සහ නිරවද්‍යතාවය සැකසීම සඳහා නව විකල්ප, දශම සංඛ්‍යා ලෙස නූල් අර්ථකථනය කිරීමේ හැකියාව. ඇතුළත් කර ඇති පරායත්තතා llhttp 8.1.0 සහ npm 8.19.2 ද යාවත්කාලීන කර ඇත.
  • ආයාත කළ ගොනුව වෙනස් වූ විට ක්‍රියාවලිය නැවත ආරම්භ වන බව සහතික කරන ඔරලෝසු මාදිලියක් ක්‍රියාත්මක කිරීමත් සමඟ පර්යේෂණාත්මක "node -watch" විධානයක් යෝජනා කර ඇත (උදාහරණයක් ලෙස, "node -watch index.js" ක්‍රියාත්මක කරන්නේ නම්, ක්‍රියාවලිය වනු ඇත. index.js වෙනස් වන විට ස්වයංක්‍රීයව නැවත ආරම්භ වේ).
  • සියලුම පිටතට යන HTTP/HTTPS සම්බන්ධතා සඳහා, HTTP 1.1 Keep-Alive යාන්ත්‍රණය සඳහා සහය සක්‍රීය කර ඇති අතර, එමඟින් එකම සම්බන්ධතාවයක් තුළ HTTP ඉල්ලීම් කිහිපයක් සැකසීමට සම්බන්ධතාවය නිශ්චිත කාලයක් සඳහා විවෘත වේ. Keep-Alive කාර්ය සාධනය සහ කාර්ය සාධනය වැඩි දියුණු කිරීමට බලාපොරොත්තු වේ. පෙරනිමියෙන්, සම්බන්ධතා විවෘත කාල සීමාව තත්පර 5 ට සකසා ඇත. සේවාදායක ප්‍රතිචාරවල Keep-Alive HTTP ශීර්ෂය විග්‍රහ කිරීම සඳහා සහාය HTTP සේවාදායක ක්‍රියාවට නැංවීමට එක් කර ඇති අතර Keep-Alive භාවිතයෙන් අක්‍රිය සේවාලාභීන්ගේ ස්වයංක්‍රීය විසන්ධි කිරීම Node.js HTTP සේවාදායක ක්‍රියාත්මක කිරීමට එක් කර ඇත.
  • Ed25519, Ed448, X25519 සහ X448 ඇල්ගොරිතම භාවිතා කරන කාර්යයන් හැර, WebCrypto API ස්ථාවර කාණ්ඩයට මාරු කර ඇත. WebCrypto මොඩියුලයට ප්‍රවේශ වීම සඳහා ඔබට දැන් globalThis.crypto හෝ අවශ්‍ය('node:crypto').webcrypto භාවිතා කළ හැක.
  • DTrace, SystemTap සහ ETW (Windows සඳහා සිදුවීම් ලුහුබැඳීම) ලුහුබැඳීමේ මෙවලම් සඳහා සහය ඉවත් කර ඇත, නිසි ආධාරක සැලැස්මක් නොමැති විට එය යාවත්කාලීනව පවත්වාගෙන යාමේ සංකීර්ණත්වය හේතුවෙන් එය නඩත්තු කිරීම නුසුදුසු යැයි සැලකේ.

Node.js වේදිකාව වෙබ් යෙදුම්වල සේවාදායක නඩත්තුව සඳහා සහ සාමාන්‍ය සේවාදායක සහ සේවාදායක ජාල වැඩසටහන් නිර්මාණය කිරීම සඳහා භාවිතා කළ හැක. Node.js සඳහා වන යෙදුම්වල ක්‍රියාකාරිත්වය පුළුල් කිරීම සඳහා, විශාල මොඩියුල එකතුවක් සකස් කර ඇති අතර, ඔබට HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 සේවාදායකයන් සහ සේවාදායකයින්, ඒකාබද්ධ කිරීම සඳහා මොඩියුල ක්‍රියාත්මක කිරීම සමඟ මොඩියුල සොයාගත හැකිය. විවිධ වෙබ් රාමු, WebSocket සහ Ajax හසුරුවන්නන්, DBMS සම්බන්ධක (MySQL, PostgreSQL, SQLite, MongoDB), සැකිලි එන්ජින්, CSS එන්ජින්, ක්‍රිප්ටෝ ඇල්ගොරිතම සහ අවසර පද්ධති ක්‍රියාත්මක කිරීම (OAuth), XML විග්‍රහ කරන්නන් සමඟ.

සමාන්තර ඉල්ලීම් විශාල සංඛ්‍යාවක් සැකසීම සහතික කිරීම සඳහා, Node.js අවහිර නොවන සිදුවීම් හැසිරවීම සහ ආපසු ඇමතුම් හසුරුවන්නන්ගේ නිර්වචනය මත පදනම් වූ අසමමුහුර්ත කේත ක්‍රියාත්මක කිරීමේ ආකෘතියක් භාවිතා කරයි. බහුවිධ සම්බන්ධතා සඳහා සහය දක්වන ක්‍රම වන්නේ epoll, kqueue, /dev/poll, සහ තේරීමයි. සම්බන්ධතා මල්ටිප්ලෙක්සින් සඳහා, Libuv පුස්තකාලය භාවිතා කරනු ලැබේ, එය Unix පද්ධති මත libev සහ Windows මත IOCP සඳහා ඇඩෝනයක් වේ. නූල් සංචිතයක් සෑදීමට libeio පුස්තකාලය භාවිතා කරන අතර, අවහිර නොවන ආකාරයෙන් DNS විමසුම් සිදු කිරීමට c-ares ඒකාබද්ධ වේ. අවහිර වීමට හේතු වන සියලුම පද්ධති ඇමතුම් නූල් තටාකය තුළ ක්‍රියාත්මක වන අතර පසුව, සංඥා හසුරුවන්නා මෙන්, ඔවුන්ගේ කාර්යයේ ප්‍රති result ලය නම් නොකළ පයිප්පයක් (නල) හරහා ආපසු මාරු කරනු ලැබේ. ජාවාස්ක්‍රිප්ට් කේතය ක්‍රියාත්මක කිරීම ගූගල් විසින් සංවර්ධනය කරන ලද V8 එන්ජිම භාවිතයෙන් සපයනු ලැබේ (මීට අමතරව, Microsoft විසින් Chakra-Core එන්ජිම සමඟ Node.js අනුවාදයක් සංවර්ධනය කරයි).

එහි හරය තුළ, Node.js Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks සහ Tcl සිදුවීම් ක්‍රියාවට නැංවීමට සමාන වේ, නමුත් Node.js හි සිදුවීම් ලූපය සංවර්ධකයාගෙන් සඟවා ඇති අතර ක්‍රියාත්මක වන වෙබ් යෙදුමක සිදුවීම් හැසිරවීමට සමාන වේ. බ්රවුසරයේ. node.js සඳහා යෙදුම් ලිවීමේදී, ඔබ "var result = db.query("select..");" කිරීම වෙනුවට, සිදුවීම් මත පදනම් වූ වැඩසටහන්කරණයේ විශේෂතා සලකා බැලිය යුතුය. වැඩ නිම කිරීම සහ පසුව ප්රතිඵල සැකසීම සඳහා බලා සිටීමත් සමග, Node.js අසමමුහුර්ත ක්රියාත්මක කිරීමේ මූලධර්මය භාවිතා කරයි, i.e. කේතය "db.query("තෝරන්න..", ශ්‍රිතය (ප්‍රතිඵලය) {ප්‍රතිඵල සැකසීම});" බවට පරිවර්තනය කර ඇත, එහිදී පාලනය ක්‍ෂණිකව වැඩිදුර කේතය වෙත ගමන් කරනු ඇති අතර, දත්ත ලැබෙන විට විමසුම් ප්‍රතිඵලය සැකසෙනු ඇත.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න