mail.eserv.ruВойти

WhyBinaryConfig

Andrey Cherezov
(v1)
  • v1 Andrey Cherezov· · Открыта

Почему в Eserv/4 в отличие от Eserv/3 используются нетекстовые файлы
конфигурации

Вопрос: а чем в подробности мотивованы мысли делать бинарные (не наглядные) файлы конфигурации ?
  1. Необходимостью держать кэшированную индексированную копию большого
  2. конфига, без желания перечитывания и переиндексации конфига при изменении его состояния внешней программой.
  3. Увеличением объема и сложности конфига, хранение которого в текстовом
  4. виде приведет к тому, что пользователи будут просто портить его формат при ручном редактировании. Это даже с простым конфигом E3 встречалось.
  5. Желание разрешить непротиворечивое изменение конфига одновременно
  6. несколькими программами (при использовании текстовых файлов это требует блокировок и нетривиального отслеживания версий).
  7. Выбранный бинарный формат — SQLite3 — открытый, очень
  8. распространенный, а поэтому более наглядный (в редакторах), чем любой самодельный текстовый формат.
  9. Поддержка всех старых текстовых конфигов сохранена в полном объеме,
  10. т.е. можно использовать новые exe с конфигами старого стиля, или даже старого и нового одновременно.