Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Применение технологий транзакции для сохранения данных

9.8K
30 января 2005 года
asdus
1 / / 30.01.2005
Собственно сталкивался ли кто с этим? Не подскажете по реализации, а то писать все самому как-то кучеряво.
Итак, что есть: программа, с которой по сети одновременно работает 200-500 клиентов, работает активно, то есть информация меняется постойнно. Раз в 30 минут - сохранение данных (рабочих) - происходит "заморозка" всего, все объекты сереализируются и пишутся в файл, работаем дальше. Так вот, оная "заморозка" всех очень напрягает, так как занимает достаточно большое время (относительно ессно - на 2ГБ ОЗУ + 2x3Ггц Пень4, 2xHDD SATA 8Mb buf - около 60 сек, размер получаещегося файла ~1Гб(пока)), которое всех ну оччень напрягает, собственно поэтому так редко и происходит, хотелось-бы раз в 10 минут делать, или хотя-бы в 20, но тогда совсем съедят.
Посему хочется сделать следущее: всю систему сохранения информации построить по транзакционному принципу (знакомо по базам данных). То есть инициализируется начало сохранения, все как-бы заморозилось (читаем инфу по транзакциям в MySQL), идет дамп на диск, при этом, паралельно, продолжается работа, и где-то в отдельном месте накапливаются изменения от "момента начала сохранения", потом запись заканчивается, измененияприменяются, работает дальше, пауза прозрачна...
Воот такое, что написал я сверху - хочу. Как уже говорилось писать все самому - имхо долго, и тяжело, так может есть у кого некие наработки, или, быть может, советы по данному поводу.
З.Ы.: для заинтересовавшихся: http://www.innodb.com/ - база юзаемая в MySQL и поддерживающая транзакции, OpenSource.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог