Компания Meta представила ZGateway — прокси-уровень без сохранения состояния, предназначенный для управления трафиком базы данных ZippyDB. Новое решение призвано устранить проблемы масштабирования, возникавшие при прямых подключениях клиентов к узлам базы данных, которые приводили к перерасходу памяти, процессорных мощностей и исчерпанию файловых дескрипторов.

В настоящее время ZGateway обрабатывает более 1 миллиарда операций в секунду, обеспечивая около 40% всего трафика ZippyDB. В компании прогнозируют рост этого показателя до 60%. При этом вычислительные затраты на работу прокси-слоя составляют около 6% для типичных сценариев использования.

Система функционирует как управляемый сервис в региональных уровнях, обнаруживаемых через ServiceRouter. ZGateway работает в двух режимах: в качестве чистого прокси или кэша с чтением на проход. В основе архитектуры лежит C++ клиент ZippyDB, который отвечает за завершение TLS-соединений, авторизацию и маршрутизацию запросов к репликам.

Внедрение ZGateway позволяет существенно оптимизировать сетевую нагрузку. Согласно расчетам Meta, общее количество постоянных соединений в системе может сократиться примерно в 19 раз, а число подключений на один узел — на 97–98%. Это позволяет масштабировать инфраструктуру независимо от общего количества клиентов.