![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| implements |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 210 Регистрация: 20.7.2010 Репутация: нет Всего: нет |
Здравствуйте, суть такова нужно в фоновом режиме(к примеру раз в минуту) обрабатывать некую логику для зарегистрированных пользователей
т.е. параметры пользователя которые меняются постоянно и их нужно выполнять в независимости в онлайн юзер или нет есть пару идей: 1. Использовать простой шедулер в который будет добавляться объект с оперируемыми данными пользователя после его регистрации. Но кажется не сильно эффективно, так как пользователей будет много, от 1 до N-1 тысяч(точного кол-ва никто не знает), нагрузка будет ух какая. 2. После выхода пользователя из системы запоминать время, а когда зайдет прежде чем показать ему динамические данные, обработать их, добавить в шедулер который будет просчитывать изменения, чтоб показывать актуальные данные пока он в онлайн. Каково Ваше мнение, может кто сталкивался с такой скользкой проблемкой. |
|||
|
||||
| Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
implements, Без скедулера никак. Единственное, вопрос как уменьшить нагрузку. Тут вариантов много, можно триггер на таблицы вешать, допустим данные добавились - триггер добавляет данные в другую таблицу, которую скедулер проверяет. Можно твой, проверять, когда юзер заходит.
|
|||
|
||||
| implements |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 210 Регистрация: 20.7.2010 Репутация: нет Всего: нет |
Samotnik, так , работает шедулер, данные хранит в переменных, тут сервак падает(по какой либо причине), и все считай данные потеряны, а пользователи злы=))) каждый же раз не будешь после обхода шедулера вызывать update таблиц, можно конечно раз там в час или два обновлять таблицы, но всеравно есть вероятность потерять данные
|
|||
|
||||
| Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
implements, а что ты хочешь? Сохранить данные можно только сохранив их: бд, фс. Если данные такие важные, значит покупай сервак по мощнее и сохраняй каждую операцию в БД. Можешь взять встроенную бд - jetty например, для временного хранения, она пошустрее мускула будет.
Задача сильно абстрактна, в первом посте речи про сохранность данных вообще не было. У меня была похожая задача, когда пользователю приходили данные нужно было оповестить юзера об этом. Я сделал так: сохранение пачки данных в свои таблицы, на них я навесил триггер, который выставляет флаг в другой таблице, которую постоянно мониторит скедулер и в случае чего шлет оповещение, проблем с перфомансом не было. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |