2015-06-09 3 views
2

У нас есть облачная служба Azure с включенным автоматическим масштабированием. Мы считаем, что некоторые из наших сообщений периодически обрабатываются машиной, которая впоследствии отключается процессом автоматического масштабирования. Это означает, что количество сообщений об обратном вызове увеличивается, и если это происходит через пару раз, мы отмечаем сообщение как неудачное, когда оно снова отменяется (мы позволяем сообщениям обрабатываться дважды)Сигнал о том, что роль рабочего Azure не следует уменьшать при обработке

Является ли выбор автоматического масштабирования какая машина отключается исключительно на основе использования ЦП хост-процесса рабочей роли?

Есть ли способ сообщить инфраструктуре Azure, что определенную машину нельзя отключать?

ответ

2

Вы не можете отказаться от выключения в экземпляре ролей, но вы можете может задержать его, в OnStop() (я считаю, что вы можете отложить до 5 минут).

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

+0

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

+1

Если ваши сообщения занимают много времени, * и *, если они являются многоступенчатыми процессами, вы можете изменить свое сообщение на этом пути, так как каждый этап завершается. Таким образом, если экземпляр умирает и сообщение снова отображается, следующий читатель может забрать где-то посередине конвейера и не начинать все заново. –

+0

Да, я подумал об этом, думаю, мне просто нужно укусить пулю :) –

3

Вы разработали свое приложение с неправильными ожиданиями. В любом случае совершенно невозможно, чтобы любой случай исчез в никуда в любой момент. Может быть, он будет закрыт, может быть, он просто сработает. Приложение должно быть в состоянии справиться с этим. Вам нужно логично «заброшенные» сообщения, а «отказ» не следует считать обычным провалом. Возможно, вам нужен счет, но, по крайней мере, это должен быть отдельный счетчик.

+0

Да, это справедливо. –

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

  • Нет связанных вопросов^_^