Опрос производительности веб-сервиса — будет ли это работать?

Нашему приложению требуется мгновенное уведомление, поэтому очевидно, что я должен использовать какой-то дуплекс WCF или связь через сокет. Проблема в том, что приложение является XBAP с частичным доверием, и поэтому мне не разрешено использовать что-либо, кроме BasicHttpBinding. Поэтому мне нужно опросить для изменений.

Нет, возникает вопрос: мой PM говорит, что интервал обновления должен составлять около 2 секунд и запускаться в интрасети с 500 пользователями на одном веб-сервере.

Есть ли у кого-нибудь из вас опыт того, как опрос повлияет на веб-сервер.

Служба очень проста, она принимает guid в качестве аргумента и возвращает список guid. Все обращения к данным кешируются, так что думаю нагрузка на сервер минимальна для одного вызова, а вот для 500...

Кроме опроса, у веб-сервера мало работы.

Итак, основываясь на этой небольшой информации (предположим, что это стандартное аппаратное обеспечение сервера, что бы это ни было), можно ли сделать квалифицированное предположение?

  • Можно или нет это реализовать, получится?

Да, я знаю, что оценить это сложно, но я был бы очень рад, если бы кто-нибудь из вас поделился своими мыслями по этому поводу.

С уважением

Ларси


person Community    schedule 07.01.2009    source источник


Ответы (5)


Опрос.. плохо, но если нет другого выхода, то идеально :)

Имейте в виду тот факт, что у вас, несомненно, будут включены проверки активности, поэтому у вас будет 500 постоянно подключенных пользователей. Использование памяти при этом, вероятно, будет более значительным, чем использование процессора. Я не могу себе представить, что доступ к сети (даже в относительно раздутой веб-службе) будет использовать большую пропускную способность сети, но ваша сетевая задержка может стать проблемой, особенно потому, что мы все видели, как веб-приложения «приостанавливались» на некоторое время.

В конце концов, вы, вероятно, будете в порядке, но вам придется проверить это самостоятельно. Существует множество стресс-тестеров веб-сервисов, вы можете использовать инструмент Microsoft WAS для одного, вот несколько ссылок на другие.

person gbjbaanb    schedule 07.01.2009

Не оценивайте, ориентируйтесь.

person orip    schedule 07.01.2009

Попробуйте использовать soapui, инструмент тестирования веб-службы, чтобы проверить производительность вашей веб-службы. Есть платная версия и бесплатная версия с открытым исходным кодом.

ваше здоровье

person Geries Handal    schedule 07.01.2009

Не думаю, что это будет особой проблемой. Я полагаю, что время ответа на каждый запрос будет довольно низким, если только вы не извлекаете чертовски много данных, поэтому 500 подключений, распределенных в течение 2 секунд, не должны сильно ударить по нему.

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

person Steven Robbins    schedule 07.01.2009

250 запросов в секунду, вероятно, выполнимо с довольно скромным оборудованием и пропускной способностью сети, если вы минимизируете данные, отправляемые туда и обратно. Я предполагаю, что вы кэшируете эти списки GUID на клиенте, поэтому в обычном случае вы можете просто отправить небольшой ответ «нет обновлений».

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

person C. Dragon 76    schedule 07.01.2009