mvc-mini-profiler - работа с веб-ролью с балансировкой нагрузки (azure et al) - PullRequest
7 голосов
/ 25 июля 2011

Я считаю, что мини-профилировщик mvc - это что-то вроде «Божьего послания»

Я включил его в новый проект MVC, ориентированный на платформу Azure.У меня вопрос - как обрабатывать профилирование через барьеры сервера (экземпляра роли)?

Возможно ли это вообще?

Ответы [ 2 ]

2 голосов
/ 27 июля 2011

По умолчанию mvc-mini-profiler сохраняет и выдает результаты, используя HttpRuntime.Cache.Это может вызвать некоторые проблемы в среде с несколькими экземплярами.

Если вы используете несколько экземпляров, то вы можете выполнить эту работу несколькими способами:

  • toзамените Http Cache на реализацию AppFabric Cache (или некоторую реализацию MemCached)
  • , чтобы использовать альтернативную стратегию хранения для результатов своего профиля (в качестве примера приведен SqlServerStorage?)

Очевидно, что любая выбранная вами стратегия потребует больше времени / ресурсов, чем просто реализация одного экземпляра.

2 голосов
/ 25 июля 2011

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

A одиночный запрос все равно будет выполняться на единственном экземпляре , ивы получите данные из того же экземпляра.Если вы хотите профилировать сервисы, расположенные на другом физическом уровне, это потребует других подходов;вовлечение связи через внутренние конечные точки, которые, я уверен, мини-профилировщик не поддерживает "из коробки".Однако модификация не должна быть такой сложной.

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

...