Должен КОПИРОВАТЬ Запросы HTTP к двум серверам

Из документации Google:

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

  1. Если Вы указываете политику ACLs (список управления доступом) правила, поисковые проверки устройства, чтобы видеть, относится ли политика правила ACL к целевому документу. Если правило относится к шаблону URL, то поисковое устройство предоставляет или запрещает доступа к URL на основе правила. Если правило не применяется затем, поисковое устройство продолжается к Шагу 2.
  2. Поисковое устройство получает учетные данные пользователя для включения олицетворения или выполняет проверку аутентификации для установления идентификационных данных пользователя. Если аутентификация Kerberos будет указана под Доступом Поискового робота, то поисковое устройство попробует аутентификацию Kerberos прежде, чем делать попытку других методов.
  3. Поисковое устройство исполняет роль пользователя или выполняет проверку авторизации, чтобы определить, может ли пользователь просмотреть содержание. Если пользователь будет разрешен просмотреть содержание, то содержание появится в результатах поиска пользователя.

Таким образом, можно установить его только до шоу пользовательские файлы, у них есть разрешение использовать.

5
задан 23 January 2014 в 11:36
4 ответа

Хотя это не то, о чем вы просите, я предлагаю другой подход для тестирования нового сервера.

Если вы установите балансировщик нагрузки перед обоими серверами и поиграете с алгоритмами балансировки нагрузки, вы можете одновременно протестировать новый сервер и постепенно заменить старый. Вы можете отправить 99% запросов на старый сервер, а оставшийся один процент запросов пойдет на новый, где вы сможете внимательно проверить, работает ли служба должным образом.

Если все работает нормально, можно постепенно увеличивать нагрузку; 90% -10%, 80% -20% и т. Д.

Подсказка: проверьте параметры haproxy и weight и static-rr .

.
1
ответ дан 3 December 2019 в 01:44

В конечном итоге мы выбрали использование Gor (теперь GorReplay) https://github.com/buger/goreplay

, это решение позволяет установить прослушиватель на исходный хост, и то, что он делает, это записывает любой входящий HTTP-запрос, это делается без его изменения или блокировки рабочего сервера от его обработки.

Затем он отправляет эти запросы на сервер воспроизведения Gor, который может обрабатывать все виды полезных логик разделения / увеличения нагрузка на основе входящих запросов - вы можете отправить процент запросов на сервер разработки или умножение запросов для создания моделируемой (но из реального трафика) нагрузки на вашу промежуточную среду, или и то, и другое ...

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

2
ответ дан 3 December 2019 в 01:44

В NodeJS написано другое средство, и оно свободно https://www.npmjs.com/package/duplicator или в github https://github.com/agnoster/duplicator

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

1
ответ дан 3 December 2019 в 01:44

Это, вероятно, поздно, но для тех, кому это понадобится позже;

Вы можете использовать mitmproxy для этого. Он позволяет дублировать и изменять (в вашем случае менять хост) захваченных запросов. Фактически, есть пример об этом в репозитории github. Я использовал его на стороне клиента, но, насколько я понимаю, его можно использовать на стороне сервера, настроив обратный прокси для вашего старого сервера.

0
ответ дан 11 April 2020 в 15:55

Теги

Похожие вопросы