Есть ли у кого-нибудь опыт использования счетчиков производительности WCF в производственной системе и проблемы с производительностью? Я подозреваю, что если вы отслеживаете все службы, конечные точки и операции и записываете все счетчики в файл, производя выборку каждую секунду, то это наихудший сценарий. Из того, что я понял, хит происходит, когда вы действительно сэмплируете, а не когда включены счетчики. Есть ли реальный опыт их использования в продакшене?
Какова производительность при использовании счетчиков производительности WCF (performanceCounters = ALL)?
Ответы (1)
Я не могу подробно ответить за WCF, но счетчики производительности в целом работают, постоянно записывая значения в какую-то общую память. Таким образом, WCF всегда записывает значения в файл с отображением памяти или общий раздел в dll.
Когда приложение perfmon хочет отобразить их, оно загружает разделяемую память и читает из нее. Это не особый удар по производительности.
Проблема возникает, когда вы хотите что-то сделать с данными счетчика, например записать их в файл или обновить график. Вот когда производительность начинает быть заметной. Это удваивается, если считыватель работает по сети.
person
gbjbaanb
schedule
05.05.2010