2010-10-01 2 views
1

Вот что я хочу сделать. У меня есть программа, с которой взаимодействуют многие клиентские устройства (сотни). К сожалению, иногда, когда я добавляю новые функции, мне требуется внести изменения, которые влияют на этих клиентов. Поэтому обычно мы должны одновременно обновлять клиенты и сервер.Внедрение обратного прокси-сервера в C#

У меня возникла идея, в которой я буду запускать каждую версию приложения одновременно и понять веб-сервер и тем самым проксировать запросы и ответы. Я начал с кода, который я нашел здесь на сайте codeproject: http://www.codeproject.com/KB/IP/reverseproxy.aspx. Это работает нормально, однако; когда я запускаю его против своей программы, сеанс не работает. Чтобы уточнить, сеанс не работает в исходной программе, которую прокси считывает.

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

Теперь я знаю, что некоторые люди захотят предложить использовать переписывание URL или Маршрутизацию приложений; Мне нужно принять решение о том, какая страница будет представлена ​​на основе содержимого сообщений/получателей, а не только URL.

Дополнительная информация: Я использую IIS6 для prod на серверах Windows 2003.

ответ

1

Это не поможет, если вы уже развернуты, но если вам нужно изменить семантику службы, измените URL-адрес. Старые клиенты используют старый URL-адрес, который действует так, как они хотят, а новые используют новый URL-адрес.

Это похоже на то, что вы сделали бы, если бы вы публиковали API - вы не изменили бы возврат функции, если бы у вас было много вызовов, которые вы не могли контролировать. Вместо этого вы добавите еще одну функцию.

+0

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

Смежные вопросы