Как программно определить количество экземпляров сервера приложений Azure в сценариях горизонтального масштабирования? - PullRequest
0 голосов
/ 08 октября 2019

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

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

1 Ответ

0 голосов
/ 08 октября 2019

Попробуйте API ниже, чтобы получить текущий номер экземпляра вашего сервера веб-приложений (план обслуживания приложения):

GET https://management.azure.com/subscriptions/<sub ID>/resourceGroups/<resource group name>/providers/Microsoft.Web/serverfarms/<service plan name>?api-version=2018-02-01

Если вы получите ответ успешно, вы можете найти номер экземпляра в properties.currentNumberOfWorkers: enter image description here Надеюсь, это поможет.

...