Sakin JavaScript na gefen uwar garken Node.js 14.0

ya faru saki Node. Js 14.0, dandamali don gudanar da aikace-aikacen cibiyar sadarwa a JavaScript. Node.js 14.0 reshe ne na tallafi na dogon lokaci, amma wannan matsayin za a sanya shi ne kawai a cikin Oktoba, bayan daidaitawa. Node.js 14.0 za a tallafawa za a yi har zuwa Afrilu 2023. Kula da reshen LTS na baya na Node.js 12.0 zai šauki har zuwa Afrilu 2022, da kuma shekarar da ta gabata reshen LTS 10.0 har zuwa Afrilu 2021. Taimakon reshe na 13.x zai ƙare a watan Yuni na wannan shekara.

Main ingantawa:

  • An daidaita ikon haifar da tashi ko kuma faruwar wasu al'amura rahotannin bincike, wanda ke nuna abubuwan da suka faru da ke taimakawa wajen gano matsaloli irin su hadarurruka, lalacewar aiki, zubar da ƙwaƙwalwar ajiya, nauyin CPU mai nauyi, fitowar kuskuren da ba zato ba, da dai sauransu.
  • Ƙara goyon bayan API na gwaji Async Ma'ajiyar Gida tare da aiwatar da ajin AsyncLocalStorage, wanda za'a iya amfani dashi don ƙirƙirar yanayin asynchronous tare da masu kulawa dangane da kiran kira da alkawuran. AsyncLocalStorage yana ba ku damar adana bayanai yayin da ake aiwatar da buƙatun yanar gizo, mai tunawa da ma'ajiya ta cikin gida a cikin wasu harsuna.
  • Cire saƙon gargaɗi game da fasalin gwaji lokacin lodawa kayayyaki ECMAScript 6 haɗi da fitarwa ta amfani da bayanan shigo da fitarwa. A lokaci guda, aiwatar da tsarin ESM da kansa ya kasance na gwaji.
  • An sabunta injin V8 zuwa sigar 8.1 (1, 2, 3), wanda ya haɗa da sababbin haɓaka aikin aiki da fasali kamar sabon ma'aikacin haɗin gwiwar ma'ana "??" (yana dawo da operand na dama idan operand na hagu NULL ne ko ba a bayyana shi ba, kuma akasin haka), ma'aikacin "?." don duba sau ɗaya na duk jerin kaddarorin ko kira (misali, "db?.mai amfani?.suna?. tsayin" ba tare da bincike na farko ba), hanyar Intl.DisplayName don samun sunayen da aka keɓe, da sauransu.
  • An gudanar da bita na API ɗin Rafuwa, da nufin inganta daidaito na APIs Rafukan da kuma kawar da bambance-bambance a cikin halayen ainihin sassan Node.js. Misali, halin http.OutgoingMessage yana kusa da rafi.Rubutu, kuma net.Socket yayi kama da rafi.Duplex. An saita zaɓin autoDestroy zuwa "gaskiya" ta tsohuwa, wanda ke nufin kiran "_destroy" bayan kammalawa.
  • Ƙara goyon bayan API na gwaji WASI (Interface System WebAssembly), samar da hanyoyin sadarwa na software don hulɗar kai tsaye tare da tsarin aiki (POSIX API don aiki tare da fayiloli, kwasfa, da dai sauransu).
  • Ƙara abubuwan buƙatu don ƙananan sigogi masu tarawa da dandamali: macOS 10.13 (High Sierra), GCC 6, Sabbin Windows 7/2008R2.

Bari mu tuna cewa ana iya amfani da dandalin Node.js duka don goyon bayan gefen uwar garke na aikace-aikacen yanar gizo da kuma ƙirƙirar shirye-shiryen abokin ciniki na yau da kullun da uwar garken. Don faɗaɗa ayyukan aikace-aikace don Node.js, adadi mai yawa na tarin kayayyaki, wanda zaku iya samun kayayyaki tare da aiwatar da sabar da abokan ciniki HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, kayayyaki don haɗawa tare da tsarin yanar gizo daban-daban, WebSocket da Ajax handlers, masu haɗawa zuwa DBMS (MySQL, PostgreSQL, SQLite). , MongoDB), injunan samfuri, injunan CSS, aiwatar da algorithms cryptographic da tsarin izini (OAuth), masu fassarori na XML.

Don ɗaukar manyan lambobi na buƙatun layi ɗaya, Node.js yana amfani da samfurin aiwatar da lambar asynchronous dangane da rashin toshewa da sarrafa taron da ma'anar masu karɓar kira. Hanyoyin da aka goyan baya don haɗin haɗin kai sun haɗa da epoll, kqueue, /dev/poll, kuma zaɓi. Ana amfani da ɗakin karatu don haɓaka haɗin kai libuv, wanda yake shi ne babban tsari kwata-kwata akan tsarin Unix da sama da IOCP akan Windows. Ana amfani da ɗakin karatu don ƙirƙirar tafkin zare liyyo, don yin tambayoyin DNS a cikin yanayin da ba tare da toshewa an haɗa shi c-zo. Ana aiwatar da duk kiran tsarin da ke haifar da toshewa a cikin tafkin zaren sannan, kamar masu sarrafa sigina, su wuce sakamakon aikinsu ta bututun da ba a bayyana sunansa ba. Ana tabbatar da aiwatar da lambar JavaScript ta hanyar amfani da injin da Google ya ƙera V8 (Bugu da ƙari, Microsoft yana haɓaka sigar Node.js tare da injin Chakra-Core).

A ainihin sa, Node.js yayi kama da tsarin aiki Perl AnyEvent, Ruby Event Machine, Python Twisted и aiwatarwa abubuwan da ke faruwa a cikin Tcl, amma madauki na taron a Node.js yana ɓoye daga mai haɓakawa kuma yayi kama da gudanar da taron a cikin aikace-aikacen gidan yanar gizo da ke gudana a cikin mai bincike. Lokacin rubuta aikace-aikace don node.js, ya zama dole a yi la'akari da ƙayyadaddun shirye-shiryen da aka gudanar, alal misali, maimakon yin "var result = db.query("zaɓi ..");" tare da jiran kammala aikin da aiki na gaba na sakamakon, Node.js yana amfani da ka'idar asynchronous kisa, watau. An canza lambar zuwa "db.query ("zaɓi ...", aiki (sakamakon) {sakamakon sarrafawa});", wanda sarrafawa zai wuce nan da nan zuwa ƙarin lambar, kuma za a sarrafa sakamakon tambaya yayin da bayanai suka isa. .

source: budenet.ru

Add a comment