![Como controlar o acesso na autorização distribuída LLM Data Plus](https://optimuscloud.com.br/wp-content/uploads/2024/04/1714522924_Como-controlar-o-acesso-na-autorizacao-distribuida-LLM-Data-Plus-150x150.jpg)
Como controlar o acesso na autorização distribuída LLM Data Plus
30 de abril de 2024![5 lições da primeira incursão do LinkedIn no desenvolvimento GenAI](https://optimuscloud.com.br/wp-content/uploads/2024/05/1715026925_5-licoes-da-primeira-incursao-do-LinkedIn-no-desenvolvimento-GenAI-150x150.jpg)
5 lições da primeira incursão do LinkedIn no desenvolvimento GenAI
6 de maio de 2024Um novo cliente WebSocket e um novo compilador V8 estão entre as atualizações do Node.js 22, no primeiro de dois grandes lançamentos planejados para este ano.
Node.js é um tempo de execução de plataforma cruzada de código aberto que permite aos desenvolvedores construir aplicativos e ferramentas do lado do servidor com JavaScript. The New Stack conversou com Rafael Gonzaga, principal engenheiro de código aberto da NodeSource e membro do Comitê de Direção Técnica do Node.js, sobre as atualizações na versão de primavera.
“Com esta atualização, obtemos algumas coisas interessantes, incluindo novos métodos de array, novos métodos de conjunto, alguns auxiliares em iteradores”, disse Gonzaga. “Além disso, movemos o módulo de observação do Node.js, que é uma espécie de substituto do Nodemon, para estável, para que os usuários agora possam contar com isso em seu uso de previsão.”
Nodemon é uma ferramenta que reinicia automaticamente um aplicativo de nó quando detecta alterações de arquivo no diretório.
V8 atualizado
V8 é o mecanismo JavaScript e WebAssembly de código aberto do Google. Está escrito em C++ e usado em Node.js. O Node.js 22 inclui atualizações para o mecanismo JavaScript V8, disse Gonzaga, incluindo a adição do Maglev, um novo compilador. Maglev foi introduzido pela V8 em dezembro de 2023 e é habilitado por padrão em algumas arquiteturas suportadas, acrescentou.
“Deve produzir um código altamente otimizado e para alguns usuários em arquiteturas suportadas isso deve melhorar muito o desempenho, otimizando o uso da CPU e melhorando diretamente o rendimento de suas aplicações”, disse ele. “Ainda estou pesquisando sobre desempenho para ver o impacto desse recurso para usuários regulares ou aplicações regulares, aplicações HTTP, e devo publicá-lo em breve; mas, em teoria, isso melhorará o desempenho dos aplicativos Node.js.”
Gráficos ESM suportados
Outro destaque desta atualização: ela inclui gráficos ESM require()ing, disse ele. Módulos ECMAScript (ESM) é um sistema de módulos JavaScript mais recente que os módulos CommonJS.
“Também incluímos nesta versão várias pequenas atualizações, que requerem módulos ESM dos módulos CommonJS”, acrescentou. “É um recurso experimental até agora. Mas basicamente, agora você pode, com o Node.js 22, exigir módulos ESM dentro de um módulo CommonJS.”
Essa mudança visa resolver o fato de que os desenvolvedores tiveram que criar soluções alternativas para importar módulos ESM, acrescentou.
“Com esta solicitação pull, você pode passar este sinalizador –módulo experimental necessário e então você pode exigir esse pacote npm e fazer acontecer”, disse ele. “Também é importante notar que ainda é experimental, então mudanças podem acontecer”.
Um novo cliente WebSocket padrão
Esta atualização também inclui um novo cliente WebSocket, que existe desde o Node.js 20 ou 21, ele adicionou, mas estava atrás de um sinalizador. Agora, com Node.js, o cliente WebSocket está habilitado por padrão. Anteriormente, os desenvolvedores tinham que instalar um novo pacote e contar com o módulo ws para que o cliente tivesse um WebSocket. Com o novo pacote, simplesmente funciona.
“Foi muito trabalho”, disse ele. “Com este novo cliente, você pode simplesmente solicitá-lo. Você não precisa exigir instalação global, então você pode simplesmente usá-lo.”
Também é mantido pelo Node.js, que possui um ambiente mais restrito, acrescentou. No passado, se um desenvolvedor adicionasse um módulo, ele poderia ter dependências que precisavam ser executadas e que poderiam impactar um aplicativo.
“Eu diria que reduzimos o vetor de ataque em termos de ataques à cadeia de abastecimento”, disse ele. “Também aumentamos a capacidade de manutenção, já que é um cliente WebSocket global, para que qualquer usuário da comunidade possa mantê-lo em vez de manter ou depender de (um) pacote diferente para realizar a mesma operação.”
Nenhuma das atualizações deve criar interrupções nos aplicativos Node.js existentes para usuários regulares, disse ele, acrescentando que a quebra pode ser possível se você estiver usando o Node.js em um ambiente restrito onde a memória é importante.
Existem alguns casos extremos que isso pode impactar, mas considerando que isso só é habilitado por meio de um sinalizador, não deve causar nenhuma quebra, disse ele.
Outra pequena mudança experimental que Gonzaga apontou é uma nova bandeira experimental --run
, que executará scripts diretamente do pacote JSON, disse ele. Com esta solicitação pull, em vez de usar o teste de execução npm, os desenvolvedores podem usar o Node --run test
que deve ser mais rápido, acrescentou.
Ele também lembrou aos usuários que se ainda estiverem executando a versão 18, agora é um bom momento para atualizar, já que o Node não está lançando recursos para a versão 18, embora ainda emitam patches de segurança.
“Minha forte recomendação é migrar para o Node.js 20 e se preparar para migrar para o Node.js 22 o mais rápido possível”, disse Gonzaga.
A postagem A versão 22 do Node.js melhora a experiência do desenvolvedor apareceu pela primeira vez em The New Stack.