సర్వర్ వైపు JavaScript Node.js 13.0 విడుదల

అందుబాటులో విడుదల Node.js 13.0,జావాస్క్రిప్ట్‌లో నెట్‌వర్క్ అప్లికేషన్‌లను అమలు చేయడానికి ప్లాట్‌ఫారమ్‌లు. అదే సమయంలో, Node.js 12.x యొక్క మునుపటి శాఖ యొక్క స్థిరీకరణ పూర్తయింది, ఇది దీర్ఘకాలిక మద్దతు విడుదలల వర్గానికి బదిలీ చేయబడింది, దీని కోసం నవీకరణలు 4 సంవత్సరాలు విడుదల చేయబడతాయి. Node.js 10.0 యొక్క మునుపటి LTS బ్రాంచ్‌కు మద్దతు ఏప్రిల్ 2021 వరకు ఉంటుంది మరియు చివరి LTS బ్రాంచ్ 8.0కి జనవరి 2020 వరకు మద్దతు ఉంటుంది.

ప్రధాన మెరుగుదలలు:

  • V8 ఇంజిన్ సంస్కరణకు నవీకరించబడింది 7.8, ఇది కొత్త పనితీరు ఆప్టిమైజేషన్ పద్ధతులను ఉపయోగిస్తుంది, ఆబ్జెక్ట్ డిస్‌స్ట్రక్చరింగ్‌ను మెరుగుపరుస్తుంది, మెమరీ వినియోగాన్ని తగ్గిస్తుంది మరియు WebAssembly ఎగ్జిక్యూషన్ కోసం ప్రిపరేషన్ సమయాన్ని తగ్గిస్తుంది;
  • అంతర్జాతీయీకరణ మరియు లైబ్రరీ-ఆధారిత యూనికోడ్ కోసం పూర్తి మద్దతు డిఫాల్ట్‌గా ప్రారంభించబడింది ఐసియు (యూనికోడ్ కోసం అంతర్జాతీయ భాగాలు), ఇది డెవలపర్‌లను కోడ్‌ను వ్రాయడానికి అనుమతిస్తుంది మద్దతునిస్తుంది వివిధ భాషలు మరియు ప్రాంతాలతో పని చేయండి. పూర్తి-icu మాడ్యూల్ ఇప్పుడు డిఫాల్ట్‌గా ఇన్‌స్టాల్ చేయబడింది;
  • API స్థిరీకరించబడింది కార్మికుల దారాలు, అనుమతించడం బహుళ-థ్రెడ్ ఈవెంట్ లూప్‌లను సృష్టించండి. అమలు అనేది worker_threads మాడ్యూల్‌పై ఆధారపడి ఉంటుంది, ఇది JavaScript కోడ్‌ని బహుళ సమాంతర థ్రెడ్‌లలో అమలు చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. వర్కర్స్ థ్రెడ్‌ల APIకి స్థిరమైన మద్దతు Node.js 12.x యొక్క LTS బ్రాంచ్‌కు కూడా బ్యాక్‌పోర్ట్ చేయబడింది;
  • ప్లాట్‌ఫారమ్‌ల అవసరాలు పెరిగాయి. ఇప్పుడు అసెంబ్లీ కోసం అవసరం కనీసం macOS 10.11 (Xcode 10 అవసరం), AIX 7.2, Ubuntu 16.04, Debian 9, EL 7, Alpine 3.8, Windows 7/2008;
  • పైథాన్ 3కి మెరుగైన మద్దతు. సిస్టమ్ పైథాన్ 2 మరియు పైథాన్ 3 రెండింటినీ కలిగి ఉంటే, పైథాన్ 2 ఇప్పటికీ ఉపయోగించబడుతుంది, అయితే సిస్టమ్‌లో పైథాన్ 3 మాత్రమే ఇన్‌స్టాల్ చేయబడినప్పుడు నిర్మించగల సామర్థ్యం జోడించబడింది;
  • HTTP పార్సర్ (“—http-parser=legacy”) యొక్క పాత అమలు తీసివేయబడింది. తీసివేయబడిన లేదా తీసివేయబడిన కాల్‌లు మరియు లక్షణాలు FSWatcher.prototype.start(), ChildProcess._channel, ReadStream మరియు WriteStream ఆబ్జెక్ట్‌లలో ఓపెన్() పద్ధతి, request.connection, response.connection, module.createRequireFromPath();
  • అనుసరిస్తోంది బయటకి వచ్చాడు 13.0.1ని నవీకరించండి, ఇది చాలా బగ్‌లను త్వరగా పరిష్కరించింది. ప్రత్యేకించి, npm 6.12.0 మద్దతు లేని సంస్కరణను ఉపయోగించడం గురించి హెచ్చరికను ప్రదర్శించడంలో సమస్య పరిష్కరించబడింది.

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, మరియు సెలెక్ట్ ఉన్నాయి. మల్టీప్లెక్స్ కనెక్షన్‌లకు లైబ్రరీ ఉపయోగించబడుతుంది లిబువ్, పైగా ఇది సూపర్ స్ట్రక్చర్ libv Unix సిస్టమ్స్‌లో మరియు విండోస్‌లో IOCP ద్వారా. థ్రెడ్ పూల్‌ను రూపొందించడానికి లైబ్రరీ ఉపయోగించబడుతుంది లిబియో, నాన్-బ్లాకింగ్ మోడ్‌లో DNS ప్రశ్నలను ప్రదర్శించడం కోసం ఏకీకృతం చేయబడింది c-ares. నిరోధించడానికి కారణమయ్యే అన్ని సిస్టమ్ కాల్‌లు థ్రెడ్ పూల్‌లో అమలు చేయబడతాయి మరియు సిగ్నల్ హ్యాండ్లర్ల వలె, పేరులేని పైపు ద్వారా వారి పని ఫలితాన్ని తిరిగి పంపుతుంది. జావాస్క్రిప్ట్ కోడ్ అమలు Google ద్వారా అభివృద్ధి చేయబడిన ఇంజిన్‌ను ఉపయోగించడం ద్వారా నిర్ధారించబడుతుంది V8 (అదనంగా, మైక్రోసాఫ్ట్ చక్ర-కోర్ ఇంజిన్‌తో Node.js సంస్కరణను అభివృద్ధి చేస్తోంది).

దాని ప్రధాన భాగంలో, Node.js ఫ్రేమ్‌వర్క్‌లను పోలి ఉంటుంది పెర్ల్ ఏదైనా ఈవెంట్, రూబీ ఈవెంట్ మెషిన్, పైథాన్ ట్విస్టెడ్ и అమలు Tclలో ఈవెంట్‌లు, కానీ Node.jsలోని ఈవెంట్ లూప్ డెవలపర్ నుండి దాచబడింది మరియు బ్రౌజర్‌లో నడుస్తున్న వెబ్ అప్లికేషన్‌లో ఈవెంట్ హ్యాండ్లింగ్‌ను పోలి ఉంటుంది. node.js కోసం అప్లికేషన్‌లను వ్రాస్తున్నప్పుడు, ఈవెంట్-ఆధారిత ప్రోగ్రామింగ్ యొక్క ప్రత్యేకతలను పరిగణనలోకి తీసుకోవడం అవసరం, ఉదాహరణకు, “var result = db.query(“select..”)” చేయడానికి బదులుగా. పని పూర్తి మరియు ఫలితాల తదుపరి ప్రాసెసింగ్ కోసం వేచి ఉండటంతో, Node.js అసమకాలిక అమలు సూత్రాన్ని ఉపయోగిస్తుంది, అనగా. కోడ్ “db.query(“select..”, ఫంక్షన్ (ఫలితం) {ఫలితం ప్రాసెసింగ్});”గా రూపాంతరం చెందుతుంది, దీనిలో నియంత్రణ వెంటనే తదుపరి కోడ్‌కు వెళుతుంది మరియు డేటా వచ్చిన తర్వాత ప్రశ్న ఫలితం ప్రాసెస్ చేయబడుతుంది. .

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి