Производительность SQLite для хранения сообщений
Опубликовано IMPOMEZIA в Вс, 07/08/2011 - 23:25
Категории:
По умолчанию история сообщений в Simple Chat 2 будет храниться в SQLite базе данных. Начал реализовать запись истории и столкнулся с жуткими тормозами, простейшая вставка в пустую таблицу занимала 150 мс! Этого достаточно чтоб заметить задержку при добавлении сообщений.
Исправить оказалось довольно просто с помощью PRAGMA synchronous = OFF после чего время вставки составило 1-2 мс. Но эта опция может привести к повреждению базы при внезапном отключении питания и т.п.
Подобные результаты получились в Windows 7 64 бит, Qt 4.7.3 и встроенном в Qt SQLite 3.6.19.
Исправить оказалось довольно просто с помощью PRAGMA synchronous = OFF после чего время вставки составило 1-2 мс. Но эта опция может привести к повреждению базы при внезапном отключении питания и т.п.
Подобные результаты получились в Windows 7 64 бит, Qt 4.7.3 и встроенном в Qt SQLite 3.6.19.
- IMPOMEZIA's блог
- Добавить комментарий
- 3972 просмотра

http://www.mysql.ru/docs/mysql-man-4.0-ru/mysql-optimisation.html#mysql-benchmarks
Использование MySQL оправдано только для сервера, и возможно в будущем будет добавлена его поддержка, но пока это не приоритетная задача.
MySQL это же клиент-серверное решение и займёт оно кучу места + сложности с реализацией. Например, Firefox также использует SQLite.