XML vs PDO Mysql

Печать RSS
245

К
Автор
Айсберг Визави
0
Нужно извлечь конфиги и вижу два варианта, из XML файла, или из базы. Проект должен быть отказоустойчивым, учитываються все мелочи, поэтому вопрос в том что лучше в плане производительности. Спасибо за дельные советы.
И

Оранжевые штаны
0
Если конфиг типа: Ключ=Значение
<?php
// Set
file_put_contents(PATH, serialize($string), LOCK_EX);
// Get
unserialize(file_get_contents(PATH));
К
Автор
Айсберг Визави
0
да не) спасибо конечно, но я не решений ищу, а совет в плане преимущества в производительности
A

Оранжевые штаны
0
Ну по тем данным,что ты дал нечего сказать, надо ж знать кучу мелочей,таких как количество параметров в конфиге,часто ли перечитывается конфиг, на каком типе hdd база данных (ssd ?). Для небольшого конфига я б конечно выбрал парсинг xml или json, незачем для этого ворочать базу данных,пока подключатся драйверы,пока произойдет выборка..

Добавлено через 03:57 сек.
и насчет отказоустойчивости,хоть это и редкости но случаются же лаги с сервером бд,а вот если конфиг на жд в одном месте с проектом то что помешает читать хml файл
К
Автор
Айсберг Визави
0
параметров ~ 50. конфиг читаеться каждый раз при обращении к скрипту. но это в принципе хз как, так как eAccelerator, а он кеширует откомпилированные скрипты.

Добавлено через 01:49 сек.
и да, в принципе можно ssd взять
П

Пацак
0
Если конфиг читается при каждом запуске, то запрос к базе будет кешироваться.
С

Пришелец
0
memcache используй

Голубые штаны
0
Я использую INI файлы для этих целей.
Если нагрузка слишком большая - то INI в связке с memcached.

Добавлено через 06:01 сек.
напр файл .ini:
ключ1="значение"
ключ2="значение"
ключ3="значение"
ключ4="значение"

[db]
host="localhost"
port=3306
name="ololo"
user="ololo"
pass="ololo"

и его подключение:
<?
$config = parse_ini_file('../core/ini/config.ini', true);

var_dump($config);
var_dump($config['db']);
Изменил: Дмитрий (21.09.2012 / 22:46)
С

Пришелец
0
8. dima.london, в связке с мемкеш можно что угодно юзать. не обязательно ИНИ

Чатланин
0
9, молодец, докопался до названия файла)
тоже советую ini. если нужна централизованность (т.е. например серверов с сайтом несколько), то конфиг можно хранить на одном сервере, а на все остальные импортировать кроном (т.е. чтоб обновлялся например раз в сутки или в час)

так же можно с xml. Использовать тут БД помоему безсмысленно
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск