{"id":39242,"date":"2019-10-31T22:28:38","date_gmt":"2019-10-31T19:28:38","guid":{"rendered":"https:\/\/prohoster.info\/blog\/vypusk-servernoj-javascript-platformy-node-js-13-0\/"},"modified":"2019-10-31T22:28:38","modified_gmt":"2019-10-31T19:28:38","slug":"vypusk-servernoj-javascript-platformy-node-js-13-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-13-0","title":{"rendered":"Release da plataforma JavaScript para servidores Node.js 13.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/en\/blog\/release\/v13.0.0\/\">Dispon\u00edvel<\/a><\/noindex> lan\u00e7amento <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\">Node.js 13.0<\/a><\/noindex>, plataformas para execu\u00e7\u00e3o de aplica\u00e7\u00f5es de rede em JavaScript. A estabiliza\u00e7\u00e3o da vers\u00e3o anterior, Node.js 12.x, tamb\u00e9m foi conclu\u00edda, e agora est\u00e1 na categoria de lan\u00e7amentos com suporte a longo prazo, com atualiza\u00e7\u00f5es liberadas por um per\u00edodo de 4 anos. O suporte para a vers\u00e3o LTS anterior, Node.js 10.0, ir\u00e1 at\u00e9 abril de 2021, enquanto a vers\u00e3o LTS anterior, 8.0, ir\u00e1 at\u00e9 janeiro de 2020.<\/p>\n<p>Principais <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@nodejs\/node-js-12-to-lts-and-node-js-13-is-here-e28d6a4a2bd\">s\u00e3o<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> O motor V8 foi atualizado para a vers\u00e3o <noindex><a rel=\"nofollow\" href=\"https:\/\/v8.dev\/\">7.8<\/a><\/noindex>, que incorpora novos m\u00e9todos de otimiza\u00e7\u00e3o de desempenho, melhora na desestrutura\u00e7\u00e3o de objetos, redu\u00e7\u00e3o no consumo de mem\u00f3ria e diminui\u00e7\u00e3o do tempo de prepara\u00e7\u00e3o para execu\u00e7\u00e3o do WebAssembly;\n<li class=\"l\"> O suporte completo \u00e0 internacionaliza\u00e7\u00e3o e Unicode \u00e9 ativado por padr\u00e3o com base nas bibliotecas <noindex><a rel=\"nofollow\" href=\"http:\/\/site.icu-project.org\/\">ICU<\/a><\/noindex> (International Components for Unicode), permitindo que os desenvolvedores escrevam c\u00f3digo <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/api\/intl.html#intl_providing_icu_data_at_runtime\">que suporta<\/a><\/noindex> trabalho com diferentes idiomas e localidades. O m\u00f3dulo full-icu agora \u00e9 instalado por padr\u00e3o;\n<li class=\"l\"> A API <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/api\/worker_threads.html\">Workers Threads<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@Trott\/using-worker-threads-in-node-js-80494136dbb6\">permitindo<\/a><\/noindex> permite criar ciclos de processamento de eventos (event loop) multithread. A implementa\u00e7\u00e3o \u00e9 baseada no m\u00f3dulo worker_threads, que permite executar c\u00f3digo JavaScript em m\u00faltiplos threads paralelos. O suporte est\u00e1vel da API Workers Threads tamb\u00e9m foi retroportado para a vers\u00e3o LTS Node.js 12.x;\n<li class=\"l\"> Os requisitos de plataforma foram elevados. Para compilar agora <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/node\/blob\/master\/BUILDING.md#platform-list\">\u00e9 necess\u00e1rio<\/a><\/noindex> \u00e9 necess\u00e1rio, pelo menos, macOS 10.11 (Xcode 10 \u00e9 necess\u00e1rio), AIX 7.2, Ubuntu 16.04, Debian 9, EL 7, Alpine 3.8, Windows 7\/2008;\n<li class=\"l\"> O suporte ao Python 3 foi aprimorado. Quando ambos, Python 2 e Python 3 est\u00e3o instalados, ainda \u00e9 utilizado o Python 2, mas agora h\u00e1 a possibilidade de compilar com apenas o Python 3 instalado;\n<li class=\"l\"> A antiga implementa\u00e7\u00e3o do analisador HTTP (&#171;&#8212;http-parser=legacy&#187;) foi removida. Chamadas e propriedades como FSWatcher.prototype.start(), ChildProcess._channel, o m\u00e9todo open() em objetos ReadStream e WriteStream, request.connection, response.connection, module.createRequireFromPath() foram removidas ou reclassificadas como obsoletas.\n<li class=\"l\"> Imediatamente <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/en\/blog\/release\/v13.0.1\/\">saiu<\/a><\/noindex> seguido pela atualiza\u00e7\u00e3o 13.0.1, que corrige rapidamente diversos erros. Isso inclui a resolu\u00e7\u00e3o de um problema que gerava um aviso no npm 6.12.0 sobre o uso de uma vers\u00e3o n\u00e3o suportada.\n<\/ul>\n<p>Vale lembrar que a plataforma Node.js pode ser utilizada tanto para suporte servidor em aplica\u00e7\u00f5es web quanto para criar programas de rede cliente e servidor convencionais. Para ampliar a funcionalidade das aplica\u00e7\u00f5es Node.js, foi preparada uma grande <noindex><a rel=\"nofollow\" href=\"https:\/\/www.npmjs.com\/\">cole\u00e7\u00e3o de m\u00f3dulos<\/a><\/noindex>, onde \u00e9 poss\u00edvel encontrar m\u00f3dulos que implementam servidores e clientes HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, m\u00f3dulos para integra\u00e7\u00e3o com diversos frameworks web, manipuladores WebSocket e Ajax, conectores a bancos de dados (MySQL, PostgreSQL, SQLite, MongoDB), motores de template, motores CSS, implementa\u00e7\u00f5es de algoritmos criptogr\u00e1ficos e sistemas de autentica\u00e7\u00e3o (OAuth), parsers XML.<\/p>\n<p> Para garantir o processamento de um grande n\u00famero de solicita\u00e7\u00f5es paralelas, o Node.js utiliza um modelo ass\u00edncrono de execu\u00e7\u00e3o de c\u00f3digo, baseado em um processamento de eventos em modo n\u00e3o bloqueante e na defini\u00e7\u00e3o de manipuladores de callback. Os m\u00e9todos suportados para multiplexa\u00e7\u00e3o de conex\u00f5es incluem epoll, kqueue, \/dev\/poll e select. Para a multiplexa\u00e7\u00e3o de conex\u00f5es, a biblioteca <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/libuv\/libuv\">libuv<\/a><\/noindex>, que \u00e9 uma sobreposi\u00e7\u00e3o sobre <noindex><a rel=\"nofollow\" href=\"http:\/\/software.schmorp.de\/pkg\/libev.html\">libev<\/a><\/noindex> em sistemas Unix e sobre IOCP no Windows. Para criar um pool de threads, a biblioteca <noindex><a rel=\"nofollow\" href=\"http:\/\/software.schmorp.de\/pkg\/libeio.html\">libeio<\/a><\/noindex>, para realizar consultas DNS de forma n\u00e3o bloqueante, foi integrado <noindex><a rel=\"nofollow\" href=\"http:\/\/c-ares.haxx.se\/\">c-ares<\/a><\/noindex>. Todas as chamadas de sistema que causam bloqueio s\u00e3o realizadas dentro do pool de threads e, assim como os manipuladores de sinal, transmitem os resultados de suas opera\u00e7\u00f5es de volta atrav\u00e9s de um canal an\u00f4nimo (pipe). A execu\u00e7\u00e3o de c\u00f3digo JavaScript \u00e9 garantida atrav\u00e9s do motor desenvolvido pela Google <noindex><a rel=\"nofollow\" href=\"http:\/\/code.google.com\/p\/v8\/\">V8<\/a><\/noindex> (adicionalmente, a Microsoft desenvolve uma vers\u00e3o do Node.js com o motor Chakra-Core).  <\/p>\n<p>Essencialmente, o Node.js se assemelha aos frameworks <noindex><a rel=\"nofollow\" href=\"http:\/\/search.cpan.org\/dist\/AnyEvent\/\">Perl AnyEvent<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/eventmachine\/eventmachine\">Ruby Event Machine<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"http:\/\/twistedmatrix.com\/\">Python Twisted<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"http:\/\/wiki.tcl.tk\/1527\">a implementa\u00e7\u00e3o<\/a><\/noindex> eventos em Tcl, mas o ciclo de processamento de eventos (event loop) em Node.js \u00e9 oculto do desenvolvedor e se assemelha ao tratamento de eventos em um aplicativo da web rodando no navegador. Ao escrever aplicativos para Node.js, \u00e9 necess\u00e1rio considerar as particularidades da programa\u00e7\u00e3o orientada a eventos, por exemplo, em vez de executar &#171;var result = db.query(&#171;select..&#187;);&#187; aguardando a conclus\u00e3o e o subsequente processamento dos resultados, em Node.js utiliza-se o princ\u00edpio da execu\u00e7\u00e3o ass\u00edncrona, ou seja, o c\u00f3digo \u00e9 transformado em &#171;db.query(&#171;select..&#187;, function (result) {processamento do resultado});&#187;, onde o controle \u00e9 imediatamente transferido para o c\u00f3digo subsequente e o resultado da consulta ser\u00e1 processado \u00e0 medida que os dados chegarem. <\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Fonte: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51741\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0440\u0435\u043b\u0438\u0437 Node.js 13.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript. \u041e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430 \u0441\u0442\u0430\u0431\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 Node.js 12.x, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0435\u0440\u0435\u0432\u0435\u0434\u0435\u043d\u0430 \u0432 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044e \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u0432 \u0441 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0441\u0440\u043e\u043a\u043e\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438, \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 4 \u043b\u0435\u0442. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 LTS-\u0432\u0435\u0442\u043a\u0438 Node.js 10.0 \u043f\u0440\u043e\u0434\u043b\u0438\u0442\u0441\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2021 \u0433\u043e\u0434\u0430, \u0430 \u043f\u043e\u0437\u0430\u043f\u0440\u043e\u0448\u043b\u043e\u0439 LTS-\u0432\u0435\u0442\u043a\u0438 8.0 \u0434\u043e \u044f\u043d\u0432\u0430\u0440\u044f 2020 \u0433\u043e\u0434\u0430. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-39242","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0440\u0435\u043b\u0438\u0437 Node.js 13.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-13-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 13.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0440\u0435\u043b\u0438\u0437 Node.js 13.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-13-0\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:28:38+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:28:38+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lan\u00e7amento da plataforma de JavaScript para servidores Node.js 13.0 | ProHoster","description":"O lan\u00e7amento do Node.js 13.0 est\u00e1 dispon\u00edvel, uma plataforma para execu\u00e7\u00e3o.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-13-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 13.0 | ProHoster","og:description":"\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0440\u0435\u043b\u0438\u0437 Node.js 13.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.","og:url":"https:\/\/prohoster.info\/pt\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-13-0","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:28:38+00:00","article:modified_time":"2019-10-31T19:28:38+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"39242","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 01:26:26","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:53:37","updated":"2026-01-24 01:26:26","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/39242","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=39242"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/39242\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=39242"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=39242"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=39242"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}