Проект NGINX опубликовал инструментарий для разработки модулей на языке Rust

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 3258
Зарегистрирован: 20.08.2022

#

Проект NGINX опубликовал инструментарий для разработки модулей на языке Rust
Дата публикации:Fri, 13 Oct 2023 10:48:23 +0300




Разработчики проекта NGINX представили инструментарий
ngx-rust, позволяющий создавать модули к http-серверу и многопротокольному прокси NGINX на языке программирования Rust. Код ngx-rust распространяется под лицензией Apache 2.0 и пока находится в состоянии бета-версии.




Изначально инструментарий развивался как проект для форсирования разработки Istio-совместимого Service mesh для платформы Kubernetes, работающего поверх NGINX. Продукт не вышел за рамки прототипа и несколько лет находился в стагнации, но опубликованные в процессе создания прототипа примеры привязок были использованы сообществом в сторонних проектах для расширения возможностей NGINX на языке Rust.



Через какое-то время компании F5 потребовалось написание специализированного модуля к NGINX для защиты своих сервисов, в котором хотелось использовать язык Rust для снижения риска ошибок при работе с памятью. Для решения задачи был привлечён автор ngx-rust, которому было поручено разработать новый и улучшенный инструментарий для создания модулей к NGINX на языке Rust.



Инструментарий включает два crate-пакета:
  • nginx-sys - генератор привязок на основе исходных текстов NGINX. Утилита загружает код NGINX и все связанные с ним зависимости, после чего использует bindgen для формирования обвязок над оригинальными функциями (FFI, foreign function interface).

    ngx - прослойка для обращения к Си-функциям из кода Rust, API и система реэкспорта обвязок, созданных в nginx-sys.


Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=59923

Жизнь за Нер'зула!

Ответить