"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Servicio de archivos estáticos Node.js de alto rendimiento: utilizando Rust

Servicio de archivos estáticos Node.js de alto rendimiento: utilizando Rust

Publicado el 2024-11-04
Navegar:800

Hace unos meses lanzamos Encore.ts, un marco backend de código abierto para TypeScript/Node.js.

Dado que ya existen muchos marcos, queremos compartir algunas de las decisiones de diseño atípicas que hemos tomado y cómo conducen a un mejor rendimiento y experiencia del desarrollador.

Sirviendo archivos estáticos en Node.js, usando Rust para un alto rendimiento

Encore.ts viene con soporte integrado para entregar recursos estáticos (como imágenes, archivos HTML y CSS, y archivos JavaScript).

Esto es útil cuando desea servir un sitio web estático o una aplicación de una sola página (SPA) que ha sido precompilada en archivos estáticos.

Al definir archivos estáticos, los archivos se entregan directamente desde Encore.ts Rust Runtime.

Esto significa que no se ejecuta ningún código JavaScript para entregar los archivos, lo que libera el tiempo de ejecución de Node.js para centrarse en la ejecución de la lógica empresarial.

High performance Node.js static file serving — using Rust

Esto acelera drásticamente el servicio de archivos estáticos y mejora la latencia de los puntos finales de su API.

Recientemente publicamos puntos de referencia que muestran cómo es 9 veces más rápido que las aplicaciones Node basadas en Express.js.

Obtenga más información en los documentos

Aplicación de ejemplo que muestra cómo servir archivos estáticos con Encore.ts

Ejemplo de código

Servir archivos estáticos en Encore.ts funciona de manera similar a definir puntos finales de API, pero usando la función api.static en lugar de la función api normal.

import { api } from "encore.dev/api";

export const assets = api.static(
  { expose: true, path: "/frontend/*path", dir: "./assets" },
);

Esto servirá para todos los archivos en el directorio ./assets bajo el prefijo de ruta /frontend.

Encore sirve automáticamente archivos index.html en la raíz de un directorio. En el caso anterior, eso significa que al solicitar la URL /frontend se entregará el archivo ./assets/index.html, y /frontend/hello se entregará el archivo ./assets/hello o ./assets/hello/index.html ( el que exista).

Concluyendo

Al utilizar un tiempo de ejecución basado en Rust junto con Node.js, Encore.ts puede mejorar el rendimiento de las aplicaciones TypeScript.

Si el rendimiento es importante para tu proyecto, podría ser una buena idea probar Encore.ts.

Y todo es de código abierto, por lo que puedes consultar el código y contribuir en GitHub.

Declaración de liberación Este artículo se reproduce en: https://dev.to/encore/high-Performance-nodejs-static-file-serving-using-rust-420m?1 Si hay alguna infracción, comuníquese con [email protected] para eliminar él
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3