Новости и события » Hi-Tech » В nginx реализована поддержка gRPC

В nginx реализована поддержка gRPC

В nginx реализована поддержка gRPC

Как сообщает opennet.ru разработчики проекта nginx объявили о включении в кодовую базу модуля с реализацией прокси для протокола gRPC, позволяющего организовать работу микросервисов на различных языках программирования, которые взаимодействуют между собой при помощи универсального API. Сетевое взаимодействие в gRPC реализовано поверх протокола HTTP/2 и базируется на применении Protocol Buffers для сериализации данных. В настоящее время ведется тестирование снапшотов nginx с поддержкой gRPC и если не будет выявлено проблем, модуль gRPC будет интегрирован в выпуск nginx 1.13.10.

Если раньше nginx мог лишь проксировать TCP-соединения gRPC, не разбирая содержимого запросов, то предложенный для тестирования модуль ngx_http_grpc_module дает возможность управлять потоками gRPC, выделяя отдельные сервисы и методы. Например, появляется возможность маршрутизировать gRPC по разным бэкендам, в зависимости от запрошенной операции, блокировать или ограничивать интенсивность определенных вызовов, инспектировать трафик gRPC или организовывать балансировку нагрузки.

Возможна работа с использованием шифрования TLS или без (h2c cleartext), в том числе на базе nginx можно реализовать обертку для применения шифрования и аутентификации для внутренних сервисов gRPC, изначально не поддерживающих такие возможности. Также nginx может выполнять роль межсетевого экрана для разграничения доступа или как единая точка входа, распределяющая обращение к разным сервисам и методам по связанным с ними бэкендам. Поддерживается применение различных схем балансировки нагрузки, например round-robin (круговой перебор, при котором соединения равномерно распределяются среди обработчиков), least-connections (запрос перенаправляется к менее нагруженному серверу), least_time (перенаправление на сервер, демонстрирующий наиболее высокую отзывчивость) и hash (перенаправление на основе хэша от определенного пользователем параметра, например, IP).

Для настройки проброса реализована новая директива grpc_pass и введена в обиход схема URL "grpc://". Для маршрутизации вызовов могут применяться штатные блоки location. Например:

location /helloworld.Greeter { grpc_pass grpc://192.168.20.11:50051; } location /helloworld.Dispatcher { grpc_pass grpc://192.168.20.21:50052; }


Доставка завтраков в Одессе от ресторана Рис : начните день...

Доставка завтраков в Одессе от ресторана "Рис": начните день правильно

Почему завтрак так важен и как ресторан "Рис" помогает его улучшить Завтрак считается одним из самых важных приемов пищи, так как он запускает метаболизм, восполняет запасы энергии и улучшает концентрацию и продуктивность на весь день. Ресторан...

сегодня 12:38

Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх