Как сервер останавливает запрос, который уже обрабатывается? - PullRequest
0 голосов
/ 05 декабря 2018

Мой сервер получил запрос, и он был обработан в течение длительного времени.Как мне это остановить?Например, я хочу остановить все запросы, которые были обработаны за 2 секунды, и выдать исключение.

Я использую Spring Cloud.

1 Ответ

0 голосов
/ 05 декабря 2018

Настройте время ожидания соединения в tomcat server.xml.

connectionTimeout
Количество миллисекунд, которое этот соединитель будет ожидать после принятия соединения, чтобы была представлена ​​строка запроса URI.Используйте значение -1, чтобы указать отсутствие (то есть бесконечный) тайм-аут.Значение по умолчанию - 60000 (т. Е. 60 секунд), но обратите внимание, что стандартный server.xml, поставляемый с Tomcat, устанавливает его на 20000 (т. Е. 20 секунд).Если для disableUploadTimeout не установлено значение false, этот тайм-аут также будет использоваться при чтении тела запроса (если есть).

Установка тайм-аутов связи очень важна для улучшения процесса коммуникации.Они помогают обнаруживать проблемы и стабилизировать распределенную систему.

Чтобы увеличить время ожидания соединения на сервере tomcat, выполните следующие действия:

  1. Откройте файл server.xml, находящийся в tomcat / conf/.
  2. Вам просто нужно установить для переменной connectionTimeout в нем значение в миллисекундах (т. Е. 1000 миллисекунд = 1 секунда)

Ниже приведена ссылка для настройки времени ожидания подключения для весеннего облака.

https://cloud.spring.io/spring-cloud-static/spring-cloud-config/2.0.0.RELEASE/single/spring-cloud-config.html#_setting_http_connection_timeout

...