2014-01-21 4 views
0

Может ли кто-нибудь предложить, как обновить услугу веб-сервиса/wcf, осуществляющую прямые транзакции без простоя?Обновить текущую службу, которая в настоящее время работает 24x7

Пожалуйста, не предлагайте обновлять часы в нерабочее время, потому что наш сервис работает 24x7, а транзакции могут выполняться в любой период времени.

Так что же лучше всего обновить такую ​​услугу с некоторыми изменениями, чтобы текущие транзакции не пострадали?

ответ

1

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

Сообщите «Сервер A», чтобы начать показ страницы с ошибкой по URL-адресу, который загружает балансировщик нагрузки. Это говорит о балансировке нагрузки, чтобы остановить отправку трафика на этот сервер. Подождите 30 секунд до тех пор, пока трафик не перестанет ударять по серверу. Обновить код на этом сервере. Сообщите серверу прекратить показ страницы с ошибкой по URL-адресу ping. Дождитесь, пока этот сервер снова получит трафик. Повторите шаги 1-5 с помощью «Сервер B».

+0

+1, что является хорошей альтернативой. Могу ли я использовать балансировку нагрузки, создав два экземпляра на одном сервере? – Aditya

1

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

0

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

Обновите службу-часть (файл xyz.war в моем случае) и запустите сервер, чтобы это стало возможным. Если в этом процессе есть какая-либо БД или другие изменения, я создаю сценарий этого и тестирую их на промежуточном сервере перед тем, как начать жить.

Только одно предложение: возьмите надлежащую резервную копию текущего сервера в реальном времени для другого случая.

+0

Hi Aditya! Я думаю, что уже упоминал, что мы не можем спустить службу или перезапустить ее. потому что как насчет тех, кто работает с транзакциями, которые постоянно работают –

+0

Hi Empire: я просто поделился своими знаниями здесь, и я вижу, что Donstack предоставил лучшее решение для этого. С 0 обновлениями времени простоя на реальном сервере, я все еще сомневаюсь в достижимости. Я с нетерпением жду решения на этой странице. Лучшая удача. – Aditya

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