2010-02-15 2 views
3

Я пытаюсь выполнить проверку производительности веб-службы wcf, которая должна получить большой трафик. Какие счетчики производительности разумны в использовании и для каких целей .. Естественно, я смотрю на процессор и оперативную память, но я хотел бы знать, когда IIS ставит под сомнение и когда у него возникают проблемы ...Счетчики производительности Webcervice wcf для очереди

Любые советы по разумным счетчикам производительности благодарность ...

Приветствия Алекс

ответ

2

MSDN есть целый раздел на WCF administration and diagnostics, и, в частности, для performance counters in WCF.

Существуют также специальные секции для счетчиков производительности hosted service calls, а также для endpoint и для operations.

Я бы предложил просмотреть эти первые, так как там есть много полезной информации.

0

Анализ счетчиков производительности является сложным и требует много практики, и это мой способ сказать, что я недостаточно опыт, чтобы дать полный список.

Вы начнете искать некоторые конкретные вещи. Прежде всего, конечно, сколько времени требуется, чтобы вернуть вызовы webservice. Это говорит вам, есть ли у вас проблема с производительностью при такой загрузке. Далее каждый смотрит на CPU. Это действительно не говорит вам многого. ОЗУ - это хорошо, но вы хотите знать, как часто ваше приложение выполняет подкачку на диск, поэтому проверьте страницу Faults/sec. Проверьте логические и физические диски для текущей очереди очереди. Если ваш физический диск вообще запущен, вы много читаете/записываете на диск.

Помимо этого, вы, как правило, пытаетесь найти конкретную и, вероятно, неясную проблему.

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

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

0

Перед тем, как запускать мониторы производительности, вы хотите, чтобы добавить ключ реестра:

HKLM/Services/CurrentControlSet/service/ 
    Add ServiceModelService 4.0.0.0 
    under that add Performance then add a DWORD FileMappingFile. 
    The size for that will be number of services exposed * 33 * 350. 

В вашей конфигурации вы бы затем добавить

<system.ServiceModel> 
    <diagnostics performanceCounters="ServiceOnly"/> 
</system.ServiceModel> 

Вы можете посмотреть следующие счетчики: CPU/ОЗУ (для утечек памяти)/для каждой услуги Продолжительность звонка и звонка, а также неработающие звонки

CPU will show you how heavily your are saturating your server 
RAM will show if you have memory leaks if it continues to grow and grow and grow 
Calls will show the number of calls you are getting accumulative, 
Calls Per Second will give you the volume you're handling 
Calls Outstanding are clients that are waiting because your services could not handle the volume. 

Если вы обнаружите некоторые сомнительные числа в этих группировках, тогда начните смотреть на другие элементы, такие как Calls Faulted или Calls Failed. (не уверены в разнице между сбоем и неисправностью)

Редко, что вам нужно будет углубиться в проблемы, чем то, что предоставят только номера услуг. Когда вы попадаете в два других набора счетчиков, ваше использование общей памяти становится очень высоким.

Смежные вопросы