Я использую компьютерный механизм Google. У меня есть менеджер по развертыванию установки и это setsup брандмауэр, который позволяет сети LB соединяться с веб-серверами, веб-серверы их сам и добавляет их к менеджеру Instance Group и настраивает Автосчетчик, который предназначается для менеджера Instance Group, Проверка состояния HTTP является установкой, которая выполнится против веб-сервера, инстанцирует, добавляют Проверки состояния HTTP к Серверной службе и добавляют менеджера Instance Group к Серверной службе, она setsup Карта URL, которая имеет Серверную службу как ее defaultService, картопостроитель URL в свою очередь добавляется к Прокси HTTP, на которого указывает Передающее Правило, которые имеют глобальный IP.
Эта установка очень похожа на установку, описанную здесь https://cloud.google.com/solutions/scalable-and-resilient-apps
Таким образом, теперь к проблеме, которую я банки, кажется, решаю для этой установки. У меня есть сервер Nginx, работающий на веб-серверах, и он отвечает на запросы, и я могу создать соединения источника события с ним, но после точно 1 минута соединение закрывается с ошибкой INCOMPLETE_CHUNKED_ENCODING. Этого не происходит, если я соединяюсь непосредственно с одним из веб-серверов. Я изменил sysconf настройки для tcp проверки активности к: сетевая ipv4.tcp_keepalive_time=600 сетевая ipv4.tcp_keepalive_intvl=15 сеть ipv4.tcp_keepalive_probes=5
Это после чтения https://cloud.google.com/compute/docs/troubleshooting#networktraffic
Я попробовал бесчисленный, думает в конфигурации nginx и наклоне не, что шов находит решение.
У кого-либо есть какой-либо язь или подобные проблемы?
Алекс был прав, поделившись ссылкой на этот пост, потому что она ведет к основной проблеме, но она требует небольшого пояснения.
Вам нужно будет изменить значение 'keepalive_timeout' (по умолчанию 65) в файле конфигурации Nginx ( /etc/nginx/nginx.conf), чтобы увеличить время ожидания HTTP-соединений, чтобы ваше время ожидания было больше, чем 600-секундное время ожидания в балансировщик нагрузки. Это заставляет балансировщик нагрузки быть стороной который закрывает простаивающие соединения, а не nginx.
Настройте поддержку активности nginx для работы с балансировщиком нагрузки HTTP(S) Google Cloud Platofrm.
Установите «keepalive_timeout 650;» в nginx /etc/nginx/nginx.conf
keepalive_timeout 650;
keepalive_requests 10000;
Более подробная информация о http persistence