Доступна серверная JavaScript-платформа Bun 1.0, более быстрая, чем Deno и Node.js
Автор
Сообщение
news_bot ®
Стаж: 6 лет 11 месяцев
Сообщений: 27286
Представлен первый значительный выпуск платформы Bun, предназначенной для обособленного выполнения приложений, написанных на языках JavaScript, JSX и TypeScript. Проект нацелен на использование в качестве прозрачной замены платформы Node.js, поддерживает используемые в Node.js механизмы работы с модулями и обработки зависимостей. Код проекта написан на языках Zig и С++, и распространяется под лицензией MIT. Для выполнения JavaScript задействован JavaScript-движок JavaScriptCore и компоненты проекта WebKit с дополнительными патчами.
В состав Bun входит полный набор инструментов для создания и выполнения приложений на языках JavaScript и TypeScript. Среди прочего, платформа предоставляет runtime для создания серверных обработчиков и выполнения JavaScript-приложений без браузера, совместимый с NPM пакетный менеджер, инструментарий для выполнения тестов, систему сборки самодостаточных пакетов и утилиту bunx для установки и запуска пакетов из репозитория NPM (эквивалент npx и yarn dlx).
Заявлены такие цели, как возможность запуска большей части существующих серверных JavaScript-приложений, достижение высокой производительности и предоставление инструментов для снижения сложности разработки и повышения производительности труда. Проект также предоставляет минимальный набор оптимизированных API для эффективного выполнения таких задач, как запуск HTTP-сервера и работа с файлами. Поддерживается режим "bun --hot" для автоматической горячей перезагрузки кода в случае изменения файлов приложения, выполняемой без остановки работы программы (при перезагрузке установленные соединения не будут оборваны и состояние не будет потеряно).
Особенностью Bun является очень высокая производительность. Например, в тестах на выполнение серверного приложения на базе фреймворка React применение Bun демонстрирует в два раза большую пропускную способность (число обработанных приложением HTTP-запросов в секунду), чем платформа Deno и в 4.7 раза, чем Node.js. В тесте на работу чат-сервера, использующего WebSocket, Bun обгоняет Deno в два раза, а Node.js - в 6 раз. В тесте загрузки больших таблиц из SQLite платформа Bun быстрее Deno в два раза, а Node.js - в 4 раза.
Выполнение установки приложений при помощи команды "bun install" производится в 25 раз быстрее, чем при использовании "npm install", а сборка командой "bun build" в 1.76 быстрее esbuild, в 26 раз быстрее rspack, в 155 раз быстрее Parcel 2 и в 224 раза быстрее WebPack 5. По сравнению с Node.js и Deno, использующими JavaScript-движок V8, Bun построен на базе фреймворка JavaScriptCore, развиваемого компанией Apple для браузера Safari. Кроме высокой производительности применение JavaScriptCore также позволило снизить потребление памяти.
Проект развивается с оглядкой на обеспечение совместимости с серверными приложениями, написанными для Node.js, поддерживает большую часть API Node.js, включая модули и структуры fs, path, http, process, __dirname и Buffer. Поддерживается и традиционный Web API, включая объекты fetch, WebSocket и ReadableStream. Предоставляется совместимость как с модулями Node.js (CommonJS и node_modules), так и с JavaScript-модулями (ESM), созданными в соответствии со спецификацией ECMAScript 6 и применяемыми в браузерных web-приложениях. В текущем виде большинство npm-пакетов, созданных для Node.js, могут быть запущены в Bun без внесения изменений или с минимальными правками. Поддерживаются многие серверные фреймворки, такие как Express, Koa и Hono.
Платформа также может заменить собой множество сопутствующих инструментов, развиваемых для экосистемы Node.js. Например, Bun может использоваться для запуска файлов с расширениями .js, .ts, .cjs, .mjs, .jsx и .tsx, заменяя такие системы, как tsc, babel, ts-node, ts-node-esm и tsx. Встроенная система сборки обособленных программ позволяет обойтись без esbuild, webpack, parcel и rollup. Встроенный пакетный менеджер предоставляет команды, совместимые с npm, обрабатывает package.json, записывает результат в каталог node_modules и может заменить npm, yarn, pnpm и lerna.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://bun.sh/blog/bun-v1.0...)
- OpenNews: Facebook открыл код JavaScript-движка Hermes
- OpenNews: В JavaScript-платформе Deno обеспечена совместимость с модулями NPM
- OpenNews: Автор Node.js представил защищённую JavaScript-платформу Deno 1.0
- OpenNews: Бывший техдиректор NPM развивает распределённый репозиторий пакетов Entropic
- OpenNews: Доступна серверная JavaScript-платформа Node.js 20.0
Похожие новости:
- В Ubuntu появится поддержка полнодискового шифрования, использующего TPM
- Опубликованы ближайшие планы развития Ubuntu Desktop
- Для Debian и Ubuntu создан репозиторий со свежими версиями ядра Linux
- Прогресс в продвижении нового менеджера приложений Ubuntu Store
- Уязвимости в PHP, GStreamer, Xen, Node.js, Python, GNOME Files и librsvg
- Выпуск Ubuntu 22.04.3 LTS c обновлением графического стека и ядра Linux
- Выпуск языка программирования Zig 0.11.0
- Применение в Ubuntu своих патчей к OverlayFS привело к появлению уязвимостей
- Доступна Real-time редакция Ubuntu, оптимизированная для процессоров Intel Core
- unsnap - инструментарий для миграции Ubuntu со Snap на Flatpak
Теги для поиска: #_bun, #_zig, #_node.js
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 02-Фев 23:58
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 11 месяцев |
|
Представлен первый значительный выпуск платформы Bun, предназначенной для обособленного выполнения приложений, написанных на языках JavaScript, JSX и TypeScript. Проект нацелен на использование в качестве прозрачной замены платформы Node.js, поддерживает используемые в Node.js механизмы работы с модулями и обработки зависимостей. Код проекта написан на языках Zig и С++, и распространяется под лицензией MIT. Для выполнения JavaScript задействован JavaScript-движок JavaScriptCore и компоненты проекта WebKit с дополнительными патчами. В состав Bun входит полный набор инструментов для создания и выполнения приложений на языках JavaScript и TypeScript. Среди прочего, платформа предоставляет runtime для создания серверных обработчиков и выполнения JavaScript-приложений без браузера, совместимый с NPM пакетный менеджер, инструментарий для выполнения тестов, систему сборки самодостаточных пакетов и утилиту bunx для установки и запуска пакетов из репозитория NPM (эквивалент npx и yarn dlx). Заявлены такие цели, как возможность запуска большей части существующих серверных JavaScript-приложений, достижение высокой производительности и предоставление инструментов для снижения сложности разработки и повышения производительности труда. Проект также предоставляет минимальный набор оптимизированных API для эффективного выполнения таких задач, как запуск HTTP-сервера и работа с файлами. Поддерживается режим "bun --hot" для автоматической горячей перезагрузки кода в случае изменения файлов приложения, выполняемой без остановки работы программы (при перезагрузке установленные соединения не будут оборваны и состояние не будет потеряно). Особенностью Bun является очень высокая производительность. Например, в тестах на выполнение серверного приложения на базе фреймворка React применение Bun демонстрирует в два раза большую пропускную способность (число обработанных приложением HTTP-запросов в секунду), чем платформа Deno и в 4.7 раза, чем Node.js. В тесте на работу чат-сервера, использующего WebSocket, Bun обгоняет Deno в два раза, а Node.js - в 6 раз. В тесте загрузки больших таблиц из SQLite платформа Bun быстрее Deno в два раза, а Node.js - в 4 раза. Выполнение установки приложений при помощи команды "bun install" производится в 25 раз быстрее, чем при использовании "npm install", а сборка командой "bun build" в 1.76 быстрее esbuild, в 26 раз быстрее rspack, в 155 раз быстрее Parcel 2 и в 224 раза быстрее WebPack 5. По сравнению с Node.js и Deno, использующими JavaScript-движок V8, Bun построен на базе фреймворка JavaScriptCore, развиваемого компанией Apple для браузера Safari. Кроме высокой производительности применение JavaScriptCore также позволило снизить потребление памяти. Проект развивается с оглядкой на обеспечение совместимости с серверными приложениями, написанными для Node.js, поддерживает большую часть API Node.js, включая модули и структуры fs, path, http, process, __dirname и Buffer. Поддерживается и традиционный Web API, включая объекты fetch, WebSocket и ReadableStream. Предоставляется совместимость как с модулями Node.js (CommonJS и node_modules), так и с JavaScript-модулями (ESM), созданными в соответствии со спецификацией ECMAScript 6 и применяемыми в браузерных web-приложениях. В текущем виде большинство npm-пакетов, созданных для Node.js, могут быть запущены в Bun без внесения изменений или с минимальными правками. Поддерживаются многие серверные фреймворки, такие как Express, Koa и Hono. Платформа также может заменить собой множество сопутствующих инструментов, развиваемых для экосистемы Node.js. Например, Bun может использоваться для запуска файлов с расширениями .js, .ts, .cjs, .mjs, .jsx и .tsx, заменяя такие системы, как tsc, babel, ts-node, ts-node-esm и tsx. Встроенная система сборки обособленных программ позволяет обойтись без esbuild, webpack, parcel и rollup. Встроенный пакетный менеджер предоставляет команды, совместимые с npm, обрабатывает package.json, записывает результат в каталог node_modules и может заменить npm, yarn, pnpm и lerna. =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 02-Фев 23:58
Часовой пояс: UTC + 5