The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Выпуск сервера приложений NGINX Unit 1.17.0

17.04.2020 09:54

Состоялся выпуск сервера приложений NGINX Unit 1.17, в рамках которого развивается решение для обеспечения запуска web-приложений на различных языках программирования (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js и Java). Под управлением NGINX Unit может одновременно выполняться несколько приложений на разных языках программирования, параметры запуска которых можно изменять динамически без необходимости правки файлов конфигурации и перезапуска. Код написан на языке Си и распространяется под лицензией Apache 2.0. С особенностями NGINX Unit можно познакомиться в анонсе первого выпуска.

В новой версии:

  • Возможность использования выражений "return" и "location" в блоках "action" для немедленного возвращения произвольного кода возврата или перенаправления на внешний ресурс. Например, для запрета доступа к URI, подпадающих под маску "*/.git/*", или перенаправления на хост с www можно использовать следующие настройки:
    
    
      {
          "match": {
              "uri": "*/.git/*"
          },
    
          "action": {
              "return": 403
          }
      }
    
      {
          "match": {
              "host": "example.org",
          },
    
          "action": {
              "return": 301,
              "location": "https://www.example.org"
          }
      }
    
  • Поддержка дробных значений веса серверов в блоках "upstream". Например, конструкцию с целыми весами, подразумевающую перенаправление на 192.168.0.103 в два раза меньшего числа запросов, чем для остальных:
    
    
      {
          "192.168.0.101:8080": {
              "weight": 2
          },
          "192.168.0.102:8080": {
              "weight": 2
          },
          "192.168.0.103:8080": { },
          "192.168.0.104:8080": {
              "weight": 2
          }
      }
    
    теперь можно привести к более простой и логичной форме:
    
      {
          "192.168.0.101:8080": { },
          "192.168.0.102:8080": { },
          "192.168.0.103:8080": {
              "weight": 0.5
          },
          "192.168.0.104:8080": { }
      }
    
  • Решены проблемы со сборкой в DragonFly BSD;
  • Исправлена ошибка, приводившая к выводу кода 502 "Bad Gateway" при высокой нагрузке;
  • Исправлена утечка памяти в router, проявляющаяся начиная с выпуска 1.13.0;
  • Устранены несовместимости с некоторыми приложениями Node.js.


  1. Главная ссылка к новости (https://mailman.nginx.org/pipe...)
  2. OpenNews: Выпуск nginx 1.17.10
  3. OpenNews: Выпуск сервера приложений NGINX Unit 1.16.0
  4. OpenNews: Выпуск nginx 1.17.9 и njs 0.3.9
  5. OpenNews: Компания Cloudflare реализовала модуль для поддержки HTTP/3 в NGINX
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/52753-nginx
Ключевые слова: nginx, unit
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (16) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 10:10, 17/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Пора уже дотнет и котлин поддержать, а то как не родные
     
     
  • 2.2, Аноним (1), 10:23, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Опаньки
    https://www.nginx.com/blog/tutorial-proxy-net-core-kestrel-nginx-plus/
    с котлином хуже
     
     
  • 3.4, Андрей (??), 11:22, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    простите, а каким образом эта ссылка относится к сабжу?
     
     
  • 4.7, brzm (ok), 13:38, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Там тоже есть слово "Nginx" :) Но да, ссылка совершенно мимо.
     
  • 2.14, serq (?), 21:17, 18/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Пора уже на С++ написать nginx
     

  • 1.3, Кусь (?), 11:19, 17/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    А что такое сервер приложений, если простым языком?
     
     
  • 2.5, Геракл (?), 11:40, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это сервер, который выполняет приложение (непосредственно осуществляет выполнение бинарника/скрипта приложения)
     
     
  • 3.8, Кусь (?), 15:26, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ой, ну это же просто интерпретатор получается. Или даже операционная система.
     
     
  • 4.15, zo0M (ok), 09:05, 27/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Веб-сервер предназначен для обслуживания запросов HTTP.
    Сервер приложений также может обслуживать HTTP-запросы, но не ограничивается только HTTP. Он также может поддерживать другие протоколы, таких как RMI/RPC.
    Поскольку веб-серверы хорошо подходят для обработки статического контента, а сервера приложений для формирования динамического контента, большинство производственных сред имеют веб-сервер, выступающий в качестве обратного прокси-сервера для сервера приложений. Это означает, что при обслуживании запроса страницы, статическое содержимое (например, изображения/статический HTML) обрабатывается веб-сервером, который интерпретирует запрос. Используя какой-то метод фильтрации (в основном расширение запрашиваемого ресурса), веб-сервер идентифицирует запрос динамического содержимого и прозрачно пересылает на обработку серверу приложений.
    Tomcat умеет выполнять приложения? Да, он является сервером приложений.
    Tomcat умеет отдавать статический контент? Да, он является веб-сервером.
    От того, что Tomcat умеет отдавать данные и по другим протоколам, он не перестает быть и веб-сервером в тот числе.
    Возьмите какую-нибудь БД, в которой, на хранимых процедурах описана сложная логика. Тем же ораклом можно в ответ на SQL-запросы даже сообщения через email отправлять. Такую штуку можно назвать сервером приложений, но веб-сервером уже нет, потому что все это не обслуживает статический контент.
    Возьмите чистый апач, в котором не включены никакие модули для поддержки языков программирования. Он умеет отдавать только статичные файлы и картинки по протоколу HTTP. Это веб-сервер, но не сервер приложений. Добавьте к нему модуль для поддержки PHP, разместите там программу на PHP, которая делает запросы к БД и динамически формирует страницы - теперь апач стал еще и сервером приложений.
     
  • 2.6, theDolphin (ok), 11:45, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Сервер приложений - программа, обслуживающая запросы по стандартным протоколам (http/wsgi/fastcgi) и управляющая экземплярами web-приложения, а так же предоставляющая фреймворк для этих приложений.

    Примеры - nginx unit, php-fastcgi, apache httpd+mod_(php|perl|whatever), apache tomcat, uwsgi, catalyst...
    Не являются серверами приложений nginx, lighttpd и прочие чисто http-срвера и балансеры

     
     
  • 3.12, Аноним (12), 23:29, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >uwsgi

    Bbbut why? Ведь есть же gunicorn…

     
  • 2.9, Аноним (9), 16:47, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    mod_php если совсем кратко, только от сысоева и с модными словечками
     
  • 2.10, Аноним (10), 17:12, 17/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://www.youtube.com/watch?v=BcmUOmvl1N8
     
     
  • 3.13, Индусы (?), 00:05, 18/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Проклято
     

  • 1.11, Аноним (11), 19:44, 17/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А кто пользуется?
     
  • 1.16, zo0M (ok), 17:42, 28/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    мда, снова не густо в ченжлоге...
    радует, что проект живет и развивается, не семимильными шагами, конечно, но хоть так - по-тихоньку, по-легоньку...
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру