Сохраните данные чата в переменной приложения или БД, где лучше? - PullRequest
1 голос
/ 04 ноября 2010

Мое приложение Веб-приложение чата , оно поддерживает следующие функции:

1.Создать / Присоединиться / Закрыть комнату 2.Отправить сообщение в комнате (просто живое сообщение, автономное сообщение может быть поддержано в будущем).сохранить данные чата (сообщение, информацию о комнате и пользователей в комнате)?Я вижу, есть 2 варианта:

1.Переменная приложения 2.Использование файла или базы данных

- Что если я сохраню в переменной приложения: В случае, если в сети 2000 номеров и 10000 пользователей, это означает, что мне необходимо сохранять в переменной приложения (фактически в оперативной памяти) информацию о 2000 комнатах, более 10000 сообщений (текст), эти числа могут быть увеличены на секунду, еслив режиме реального времени больше пользователей онлайна потом что ?Я не знаю, что будет с сервером, сбой?или мое веб-приложение будет прекращено?что бы я не хотел, оба результата!

- Что делать, если я сохранил файл или БД (например, БД SQL Server) Из-за веб-приложения клиенты должны отправлять запрос каждую 1 секунду, чтобы получить данные (сообщения и список пользователей в комнате).Таким образом, в случае, если в сети 2000 номеров и 10000 пользователей, это означает, что они будут делать 10000 запросов в 1 секунду к БД.Я не знаю, что случится с БД, там много подключений, и КАЖДАЯ 1 секунда, может ли БД оставаться в живых, чтобы обслужить запрос?

Я не знаю, где сохранение сейчас хорошо, потому что обаКажется, это плохое решение :(. Каково ваше мнение? Пожалуйста, дайте мне несколько идей для этого? Большое спасибо!

1 Ответ

1 голос
/ 04 ноября 2010

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

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

...