Есть ли способ узнать, достиг ли сетевой адаптер виртуальной машины Windows Azure назначенного предела пропускной способности?
Виртуальные машины Windows Azure имеют ограничения пропускной способности. ExtraSmall имеет 5 Мбит / с, в то время как другие находятся в кратных 100 Мбит / с.
У меня есть рабочая роль, которая удаляет задания из очереди. Задания имеют низкие потребности процессора, но высокие потребности сети, такие как получение материалов из удаленного веб-сервиса и запись в хранилище таблиц. Мне нужен способ ограничить мой код от получения большего количества заданий из очереди, если ограничение 5 Мбит / с (или 90% от него) в настоящее время используется.
Из монитора производительности Windows, "Network Интерфейс (*)длина очереди вывода " постоянно равна нулю.
Каковы мои варианты? Любое направление будет высоко оценено.
1 ответ:
Я бы запросил встроенные счетчики производительности внутри вашего кода и использовал результат для отступления. Если метрика "сеть в" не подходит для вас, вы всегда можете создать пользовательский счетчик производительности. здесь - ссылка на страницу на WindowsAzure.com о том, как запрашивать счетчики и как создавать пользовательские счетчики.
Я тоже боролся с этим: \Network Interface (*)\Output Queue Length" всегда равен 0, хотя это встроенный счетчик производительности. Я слежу за тобой. "Сеть В" и установить оповещения на портале.
Эмпирическое правило в Azure - 100 Мбит / с на ядро, и поскольку extra small использует "общее ядро", вы еще более ограничены. С другой стороны, сверхмалые виртуальные машины очень дешевы в эксплуатации!