Как использовать ThrottlingFilter для Jetty в Restlet
-
20-08-2019 - |
Вопрос
Я хотел бы настроить веб-сервис так, чтобы после заполнения очереди приема сервис возвращал 503.В настоящее время у этих запросов, похоже, просто истекло время ожидания.
Я действительно установил такие параметры, как Максимальные потоки и acceptQueuesize принять запрос (как описано здесь: http://www.restlet.org/documentation/1.1/ext/com/noelios/restlet/ext/jetty/JettyServerHelper).
Но служба не отвечает с помощью 503, как только acceptQueue заполнен.
Кажется, дросселирующий фильтр джетти (http://www.mortbay.org/jetty/jetty-6/apidocs/index.html?index-all.html) - это то, что я ищу, но я не знаю, как подать заявку в моем сервисе restlet.
Решение
Вы не сможете воспользоваться преимуществами ThrottlingFilter, если не развернете свое приложение в виде файла WAR в Jetty.JettyServerHelper загружает Restlet как автономный сервер, использующий Jetty для приема HTTP-соединений и, следовательно, не может использовать фильтр сервлетов.Я не уверен, есть ли в любом случае возможность использовать аналогичную логику обработки из ThrottlingFilter в Jetty за пределами мира сервлетов или нет.