30 вызовов в секунду много для одного сервера IIS? - PullRequest
1 голос
/ 25 марта 2010

У нас есть приложение RIA, которое одновременно используют 300 клиентов в интрасети. Вместе они совершают 30 вызовов в секунду в IIS (asp.net) (на самом деле это 60, но вызовы распределяются между двумя серверами IIS). Половина вызовов получает актив (используется профиль кэширования, поэтому большая часть времени используется для кэширования), другая половина сохраняет данные на сервере sql.

Извлечение актива выполняется на странице aspx. Сохранение данных происходит через WebORB, asp.net и Sql Server. Таким образом, WebORB требует некоторой обработки (amf decoding, GZIP, ...). Мы также используем Spring.NET, и некоторые объекты-контейнеры имеют область запроса (не много).

IIS-серверы -> Виртуальные машины, 4 процессора, 2 ГБ ОЗУ. Они основаны на Windows 2008 x64 SP2 Enterprise Edition.

Используется Sql Server 2008.

Очевидно, что загрузка ЦП обоих IIS постоянно составляет около 60-70%.

Теперь, мой вопрос, допустима ли загрузка на 60-70%, и как мы можем снизить ее до% (возможно, используя только один сервер IIS)?

Активы могут иметь размер до 20 МБ, но в среднем они составляют около 30 КБ. (нагрузка 60-70% достигается с активами около 30 КБ).

Данные, которые сохраняются с помощью weborb, очень малы (2 КБ) и представляют собой всего один объект.

...