Назад | Перейти на главную страницу

Перенаправить запрос на несколько серверов

У нас 2 сервера. Один старый сервер, а другой новый. В настоящее время мы собираемся выполнить миграцию, потому что старый сервер не способен обрабатывать повседневные запросы.

Технические характеристики:

Старый сервер

Новый сервер

Наш менеджер попросил нас выяснить, может ли старый сервер выполнять множественную переадресацию для всех входящих запросов, например, настроить Nginx старого сервера на пересылку всех запросов как на старый, так и на новый сервер. Цель состоит в том, чтобы выполнить модульное тестирование нового сервера, используя старый сервер в качестве компаратора, посмотреть, готов ли новый сервер взять на себя роль.

Пожалуйста, помогите, если есть идея, или нужно установить какой-то движок, или то, что мы делаем, невозможно. Большое спасибо.

В настоящее время моя конфигурация сервера (старый сервер):

server {

слушать *: 80;
access_log /var/log/nginx/apps.access.log;

error_log /var/log/nginx/apps.error.log;
расположение / {

   proxy_pass http://127.0.0.1:8081;
   include /etc/nginx/proxy.conf;

}

location / media / {

   root    /var/www/media/;
   expires 24h;

}

}

Нет ответа? : '(... пока что это мой подход:

Я создал новый сервер (фиктивный сервер), который копирует все структуры и методы веб-службы (фиктивный метод, объявление того же метода, но без кода). Внутри каждого метода я написал:

def foo (бар):

импортировать xmlrpclib как x p = x.ServerProxy (server1_url)

результат = p.foo (бар)

p = x.ServerProxy (server2_url)

p.foo (бар)

вернуть результат

Если вы обнаружили, что этот код замедляет работу веб-службы, просто выполните отправку на Server2 с помощью сельдерея. Нам нужен только результат Server1.

Это всего лишь уловка, но она работает.