Как я могу форсировать запрос через mod_jk к конкретному работнику?

StackOverflow https://stackoverflow.com/questions/812994

  •  03-07-2019
  •  | 
  •  

Вопрос

Если у меня настроен mod_jk с несколькими работниками и работником балансировщика нагрузки, есть ли параметр запроса или что-то такое, что позволило бы мне передать конкретный http-запрос конкретному работнику. Например, если у меня есть работник worker1, есть ли что-то вроде этого:

http://www.example.com?worker=worker1

Зачастую нам необходимо устранять проблемы на конкретном сервере в кластере, поэтому крайне важно иметь возможность принудительно отправлять запрос непосредственно на этот сервер.

Это было полезно?

Решение 2

<Ол>
  • Настройте значение файла cookie JSESSIONID. Конец имеет имя работника, к которому вы привязаны (при условии, что вы выполняете липкие сессии)

  • Используйте SetHandler, как описано здесь http: //tomcat.apache .org / connectors-doc / reference / apache.html вместо директив JKMount

    Примерно так:

    
       <Location />  
          SetHandler jakarta-servlet  
          SetEnvIf REQUEST_URI ^/.*\?.*worker=(\w+)&?$ JK_WORKER_NAME=$1  
       </Location>
    
  • Другие советы

    Я думаю, что обычная практика заключается в том, чтобы делать это через субдомены, которые являются псевдонимами основного домена. Просто убедитесь, что вы не пускаете Google index, потому что у вас будут проблемы с дублированием контента. IP-фильтрация и ограничительный robots.txt сделают эту работу.

    www1.example.com
    www2.example.com
    
    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top