URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 113164
[ Назад ]

Исходное сообщение
"Увидел свет сервер приложений NGINX Unit 0.3"

Отправлено opennews , 30-Дек-17 09:21 
Доступен (http://mailman.nginx.org/pipermail/nginx/2017-December/05536...) третий публичный выпуск сервера приложений NGINX Unit (http://unit.nginx.org/), в рамках которого развивается решение для обеспечения запуска web-приложений на различных языках программирования. Проект пока находится на стадии бета-тестирования и не рекомендован для промышленного использования. Код  написан на языке Си и распространяется (https://github.com/nginx/unit) под лицензией Apache 2.0.


Под управлением NGINX Unit может одновременно выполняться несколько приложений на разных языках программирования, в том числе могут сочетаться разные версии языков (например, PHP 5 и PHP 7, Python 2.7 и Python 3.4). В настоящий момент поддерживаются Python, PHP и  Go, а на будущее запланирована поддержка JavaScript/Node.js, Java и Ruby. NGINX Unit может обслуживать отдачу динамического контента  как самостоятельно, так и работать (http://unit.nginx.org/docs-integration-with-nginx.html) в тандеме с http-сервером nginx, который в этом случае выступает в роли балансировщика, кэша или сервера для отдачи статического контента.


NGINX Unit предоставляет (https://www.nginx.com/blog/introducing-nginx-unit/) возможность динамического изменения параметров запуска приложений через специальный  RESTful JSON API (http://unit.nginx.org/docs-configuration.html), без необходимости  правки файлов конфигурации и перезапуска (ответ на потребность пользователей nginx в  возможностях ".htaccess"). Доступ к API может быть организован через UNIX domain socket или TCP, что позволяет управлять работой сервера приложений удалённо и централизовано. Изменение настроек не приводит к перезапуску рабочих процессов - меняются только содержимое структур в памяти, что сводит к минимуму накладные расходы и позволяет менять параметры с любой интенсивностью.

Работу NGINX Unit обеспечивает несколько взаимодействующих процессов: процесс управления конфигурацией, основной процесс для запуска обработчиков web-приложений и многопоточный процесс для маршрутизации вызовов, транслирующий внешние запросы к web-приложениям. Процесс маршрутизации в свою очередь состоит из координатора запросов и рабочих нитей, которые принимают запросы клиентов, направляют их web-приложениям и возвращают ответ. Каждая рабочая нить может работать   в асинхронном режиме и обслуживать тысячи одновременных соединений. С правами root выполняется только главный управляющий процесс, а все остальные обработчики запускаются под отдельными непривилегированными пользователями.


Изменения (https://unit.nginx.org/CHANGES.txt) в новой версии:

-  Добавлена опция "limits.requests (https://github.com/nginx/unit/commit/47bc1c53d6af98a4b2ea39e...)" для ограничения числа запросов к web-приложению (после выполнения заданного числа запросов обработчик завершает свою работу);
-  Добавлена опция "limits.timeout"  для задания таймаута выполнения web-приложения, без учёта времени запуска и нахождения в очереди;
-  С целью минимизации задержек проведена оптимизация кода обработки запросов к web-приложениям;

-  Добавлена поддержка HTTP-соединений в режиме  keep-alive;

-  Для настройки виртуальных окружений Python добавлена опция "home";

-  Для Python добавлена возможность создания обработчиков выхода при помощи модуля atexit (https://docs.python.org/3.6/library/atexit.html);

-  Усовершенствован модуль (https://github.com/nginx/unit/tree/master/src/go/unit) для языка Go, который переименован в  "nginx/unit".

URL: http://mailman.nginx.org/pipermail/nginx/2017-December/05536...
Новость: http://www.opennet.me/opennews/art.shtml?num=47829


Содержание

Сообщения в этом обсуждении
"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Витя Пиканов , 30-Дек-17 09:21 
Круто, смогу теперь нормально и без попо-боли одновременно запускать приложухи на Python, PHP и Go, эдакий microservices

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 09:31 
Витя, ты и сейчас это можешь делать. С помощью контейнеров, правда, но работает отлично.

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 09:49 
- с стабильным релизом контейнеры-шмонтейнеры станут не нужны.
- порог вхожения в микросервисы значительно упростится

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 14:40 
> порог вхожения в микросервисы значительно упростится

Это-то и пугает...


"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 23:29 
> Это-то и пугает...

Там появятся пользователи!


"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено rshadow , 31-Дек-17 00:00 
на серверах? ЛОЛ

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 02-Янв-18 06:48 
Боишься остаться без работы?

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 09:51 
а если сопоставить цену поддержки инфраструктуры на контейнерах и на базе nginx unit?

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 10:06 
То принципиальной разницы не увидим.

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено mrd , 30-Дек-17 10:30 
Зависит от желания сделать это все безопасным. Для безопасных контейнеров нужен pipeline чтобы быстро можно было все обновить (в идеале).

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено username , 30-Дек-17 11:38 
> Зависит от желания сделать это все безопасным. Для безопасных контейнеров нужен pipeline
> чтобы быстро можно было все обновить (в идеале).

В вендор локе по определению не может быть ничего безопасного. Спроси у них почему куб в ентерпрайз версии и нет до сих пор экспорта в aci. А еще, где версия без демона и нормальные pgp подписи пакетов. Ребята на пути к успеху.


"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено rshadow , 31-Дек-17 00:03 
В продакшене все равно будут контейнеры. А юнит используется для _однообразного_ и онлайн-управляемого запуска сервисов из разных языков.

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено username , 30-Дек-17 11:34 
Что, серьёзно? Т.е волюм уже перестал корруптить при проблемах с io и докер демон перестал терять контейнеры и быть целой историей для изучения?
Использую его там где нет выхода а в остальных случаях изоляцию и контроль зависимостей делает habitat.

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 31-Дек-17 13:36 
Уже давно: https://uwsgi-docs.readthedocs.io/en/latest/

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 09:54 
А чет думал что и раньше можно было... Ну например nginx + php, а если язык тянет свой веб сервер то можно чтоб просто через nginx проксировалось.. Или я где-то ошибаюсь?

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 09:55 
Отвечаю сам себе же) я все понял.. Убрали надобность перезапуска сервера

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено rshadow , 31-Дек-17 00:05 
В больших конторах типа яндекса или гугла 100500 разных проектов и языков. Изучать нюьансы работы  и поддерживать каждый самописный сервер накладно. Через юнит для админа все будет одинаково.

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 13:49 
RESTful JSON API - в тексте битая ссылка

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 16:27 
исправь

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 14:42 
Какой смысл был ведь Passenger? Еще и на лицензии апачь. Вообщем странно это все.

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено user455 , 30-Дек-17 14:56 
опоздали они с ним. зачем нужен этот сервер, если приложение можно запустить в контейнере?

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено рыба ест людей , 30-Дек-17 15:40 
Зачем запускать приложение в контейнере, если можно его запустить в сервере приложений?

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 15:45 
Затем чтобы не копаться в мусорных контейнерах.

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено annual slayer , 30-Дек-17 17:21 
а в случае python это будет типа замены gunicorn?

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Аноним , 30-Дек-17 19:36 
да

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено Лис , 30-Дек-17 22:05 
А можно так Go прикрутить напрямую в nginx?

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено KonstantinB , 30-Дек-17 23:13 
nginx unit технически не имеет никакого отношения к веб-серверу nginx. Общее только название и авторы.

"Увидел свет сервер приложений NGINX Unit 0.3"
Отправлено KonstantinB , 30-Дек-17 23:19 
Ссылки в новости битые.

Конфигурация (в т.ч. через JSON API):
http://unit.nginx.org/configuration/

Интеграция с nginx:
http://unit.nginx.org/integration/

Видимо, сайт, как и сам unit, в глубокой бете и недавно менялся. Хотя редиректы могли бы и поставить.