Несколько месяцев назад мы выпустили Encore.ts — серверную среду с открытым исходным кодом для TypeScript / Node.js.
Поскольку уже существует множество фреймворков, мы хотим поделиться некоторыми необычными дизайнерскими решениями, которые мы приняли, и тем, как они приводят к повышению производительности и улучшению качества разработки.
Encore.ts имеет встроенную поддержку обслуживания статических ресурсов (таких как изображения, файлы HTML и CSS, а также файлы JavaScript).
Это полезно, если вы хотите обслуживать статический веб-сайт или одностраничное приложение (SPA), предварительно скомпилированное в статические файлы.
При определении статических файлов они обслуживаются непосредственно из среды выполнения Encore.ts Rust.
Это означает, что для обслуживания файлов не выполняется код JavaScript, что позволяет среде выполнения Node.js сосредоточиться на выполнении бизнес-логики.
Это значительно ускоряет как обработку статических файлов, так и уменьшает задержку конечных точек API.
Недавно мы опубликовали тесты, показывающие, что он в 9 раз быстрее, чем приложения Node на базе Express.js.
Подробнее читайте в документации
Пример приложения, показывающий, как обслуживать статические файлы с помощью Encore.ts
Обслуживание статических файлов в Encore.ts работает аналогично определению конечных точек API, но вместо обычной функции API используется функция api.static.
import { api } from "encore.dev/api"; export const assets = api.static( { expose: true, path: "/frontend/*path", dir: "./assets" }, );
Это будет обслуживать все файлы в каталоге ./assets с префиксом пути /frontend.
Encore автоматически размещает файлы index.html в корне каталога. В приведенном выше случае это означает, что запрос URL-адреса /frontend будет обслуживать файл ./assets/index.html, а /frontend/hello будет обслуживать файл ./assets/hello или ./assets/hello/index.html ( в зависимости от того, что существует).
Используя среду выполнения на основе Rust вместе с Node.js, Encore.ts может повысить производительность приложений TypeScript.
Если для вашего проекта важна производительность, возможно, стоит попробовать Encore.ts.
И все это с открытым исходным кодом, так что вы можете проверить код и внести свой вклад на GitHub.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3