Где хранить конфигурацию?БД или файл?

vxc

Новичок
Где хранить конфигурацию?БД или файл?

Здравствуйте. Есть самопальная ЦМС c десятком модулей.
Встал вопрос о том где хранить настройки самого движка и модулей.(метаданные,ограничения кол-ва сообщений на странице и прочая муть).
Где лучше хранить эти данные?
С БД или в каком-нибудь config.php?
Если хранить в файле то лучше запихнуть все в один файл или разбить на части и подгружать по необходимости?
Заранее благодарен.
 

vovanium

Новичок
имхо, лучше в конфиг-файле, незачем базу лишний раз дергать.
 

zerkms

TDD infected
Команда форума
vovanium
"лучше" :) а критериев ТС не озвучил. на основе чего ты сделал оценку?
в конфиг-файл сложнее писать, нужно давать права на запись. :)
 

vxc

Новичок
а лучше все запихнуть в один файл или выделить отдельно настройки самого движка в файл который будет подгружаться всегда и настройки каждого модуля в отдельный файл?

-~{}~ 07.11.09 17:43:

Автор оригинала: zerkms
vovanium
"лучше" :) а критериев ТС не озвучил. на основе чего ты сделал оценку?
в конфиг-файл сложнее писать, нужно давать права на запись. :)
Главный критерий - хороший баланс между удобством и быстродействием:))
В плане реализации проблем не возникнет:)
 

Lightning

Трудоголик
Основной конфиг ( который подгружается в любом случае ) храню в файле php.
Плюсы:
- конфиг быстро загружается (т.к. байт-код php-файлов кэшируется акселератором).
- не подключаемся к БД только из-за одного конфига.
Минусы:
- заморочки с параллельными изменениями конфига. (но т.к. основной конфиг меняется очень редко, это несущественно).
Конфиги модулей храню в БД.
Плюсы:
- подгружаем конфиг модуля только тогда, когда модуль используется на странице, а не грузим все конфиги.
- легко сделать разные конфиги модулей для разных страниц, групп страниц и т.д.
- никаких проблем с параллельным изменением конфига
- еще куча возможностей

-~{}~ 07.11.09 18:04:

Хранить конфиги модулей в куче файлов нет смысла, т.к. ни в скорости, ни в удобстве таким образом не выиграть.
 

Фанат

oncle terrible
Команда форума
никакого баланса между удобством и быстродействием здесь быть не может. поскольку быстродействие в данном случае - величина нулевая.
 

Lightning

Трудоголик
Я думаю, под "быстродействием" ТС имел ввиду скорость загрузки конфигов.
 

nirex

Новичок
vxc
тут главное держаться золотой середины между идиотизмом и необходимостью, т.е. если данные редко меняются и к ним лазают только тех. специалисты к примеру к таким как реквизиты к бд, то их явно глкпо держать в бд ^_^
А по поводу разделения основного конфига и конфигов модулей , конечно надо разделять, чтобы не было завтрака (чая и бутерброда в одной тарелке), хотя желудку в принципе параллельно ))))
 

vovanium

Новичок
zerkms
в конфиг-файл сложнее писать, нужно давать права на запись
Я же написал "имхо", мне не сложно писать в конфиг :D

Фaнат
поскольку быстродействие в данном случае - величина нулевая.
Это в случае наличии рук правильной кривизны, уже приходилось наблюдать cms'ки у которых настройки из базы достаются по одной, в итоге десятка два запроса, только на то чтобы конфиг вытянуть... Зато офигительно гибко :D
 

zerkms

TDD infected
Команда форума
vovanium
я и не говорил, что тебе сложно.
я сказал, что в файл писать сложнее (превосходная степень сравнения), чем в базу :)
 
Сверху