2010-10-23 2 views
1

Мы хотим, чтобы вызов ajax выполнялся каждые 100 секунд, который запрашивает логическое значение из базы данных, которая сообщает стороне клиента, если пользователь все еще разрешает задавать вопросы.Ajax Опрос с 1000 пользователями чата

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

Наихудший scenerio, 1000 пользователей делают этот запрос в то же время. Максимальный размер пула базы данных составляет 1000.

Это приложение ASP.NET, использующее методы страницы, доступ к которым осуществляется через функции обратного вызова javascript.

ответ

0

Почему бы не рандомизировать задержку? Например, опрос не каждые 100 секунд, а каждые 100 + some_random_offset секунд. Таким образом, вам гарантировано, что у вас не будет 1000 опросов клиентов ALWAYS в одно и то же время, хотя вы можете увидеть случайные случайные всплески.

0

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

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