Я понимаю, что это старый вопрос, но мы решили проблему Affinity, используя Windows Web Farm Framework и создав слой прокси-серверов, которые поддерживают Affinity для наших веб-серверов.
http://technet.microsoft.com/en-us/library/jj129385.aspx
Эта архитектура рекомендуется, если вы работали самостоятельно и, похоже, в равной степени применимы к Azure. Слои выглядят примерно так ...
Брандмауэр: Azure Load Balancer (циклический перебор на прокси-серверы)
Proxy: Application Request Routing (ARR) для балансировки нагрузки с помощью Affinity для веб-серверов, статического и динамического сжатия и SSL. Разгрузка SSL на прокси-серверы дает веб-серверам дополнительное процессорное время. Кроме того, Web Farm Framework отлично подходит для масштабирования, поскольку он управляет каждым дополнительным веб-сервером, копирует файлы приложений, отслеживает состояние, переключает онлайн / офлайн и т. Д. С его помощью можно управлять более чем 10 000 веб-серверами.
Веб: обычные веб-серверы (не требуется SSL, сжатие и т. Д.).
База данных: обычные серверы баз данных или Azure SQL.
Microsoft рекомендует иметь как минимум два сервера ARR (Proxy). Некоторые люди будут таращиться на дополнительные деньги в Azure. Однако мы обнаружили, что микроэкземпляры (15 долл. США) более чем подходят в качестве прокси-серверов, если скорость 5 Мбит достаточна.
Другая альтернатива - настроить два сервера ARR в качестве малых экземпляров (65 млн. Долл. США при 100 мбит), но отключить один из них и включить его только в пиковые периоды или при выходе из строя первого сервера (например, возможно, запланировать запуск второго сервера ARR). при первом запуске обновлений Windows и остановке через час).
Это неудобно в настройке, но как только оно работает, оно становится очень приятным!
ПРИМЕЧАНИЕ. В документации WFF есть некоторая путаница с терминами ARR, прокси и контроллером. Они обычно все одно и то же. Запомните это, если попытаетесь настроить его.