The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Посоветуйте способ хранения конфигов, !*! universite, 21-Авг-14, 02:19  [смотреть все]
Имеется самопальный хостинг.
Конфиги nginx, apache и php-fpm генерируется на основе шаблонов и файла данных

$ cat domain.ip.list


# login domain    ipv4    ipv6    proxy ipv4    proxy ipv6    zz-nginx-php-zz|zz-nginx-apache-zz    yy-mail-yy
ynek    ynek.biz        5.11.11.11    2001:4000:1:1234::1    127.0.0.1    zz-nginx-apache-zz
ynek    frontend.ynek.biz    5.11.11.11    2001:4000:1:1234::1            zz-nginx-php-zz
...

Хочется по ключу login-domain всунуть еще десятка два параметров.

Поэтому встал вопрос смены файла данных на:
1) XML-конфиг
2) sqlite база
3) ваши варианты...

  • Посоветуйте способ хранения конфигов, !*! tsolodov, 15:55 , 21-Авг-14 (1)
    >[оверквотинг удален]
    > yy-mail-yy
    > ynek ynek.biz  5.11.11.11 2001:4000:1:1234::1 127.0.0.1 zz-nginx-apache-zz
    > ynek frontend.ynek.biz 5.11.11.11 2001:4000:1:1234::1   zz-nginx-php-zz
    > ...
    >

    > Хочется по ключу login-domain всунуть еще десятка два параметров.
    > Поэтому встал вопрос смены файла данных на:
    > 1) XML-конфиг
    > 2) sqlite база
    > 3) ваши варианты...

    А чем не устраивает текущая установка?
    Вообще писать в БД(лучше все таки mysql/postgress/MS) по мне более интереснее т.к.  к ней можно будет обращаться с разных мест и скрипты писать по мне проще используя данные из БД. А в postgres вообще очень развитый язык программирования и все можно построить на хранимых процедурах.(сам не юзал).+при вставке можно проверять корректность данных а в xml такое не прокатит наверное. Ну или как вариант сейчас писать в sqlite, переписать скрипты на mysql/postgres с него будет проще.


  • Посоветуйте способ хранения конфигов, !*! pavlinux, 06:05 , 25-Авг-14 (2)
    > Хочется по ключу login-domain всунуть еще десятка два параметров.


    CREATE TABLE IF NOT EXISTS `clients` (
      `login` varchar(255) NOT NULL default '',
      `domain` varchar(255) NOT NULL default '',
      `ipv4` varchar(255) NOT NULL default '',
      `ipv6` varchar(255) NOT NULL default '',
      `proxy_ipv4` varchar(255) NOT NULL default '',
      `proxy_ipv6` varchar(255) NOT NULL default '',
      `zz-nginx-php-zz` tinyint(1) NOT NULL default '0',
      `zz-nginx-apache-zz` tinyint(1) NOT NULL default '0',
      `yy-mail-yy` varchar(255) NOT NULL default '',
      KEY `login` (`login`)
    ) TYPE=MyISAM AUTO_INCREMENT=сам считай;


    $ mysql -p -u odmin -D supirbasa -e 'INSERT INTO clients VALUES (ynek,ynek.biz,5.11.11.11,2001:4000:1:1234::1,127.0.0.1,,0,1,);'

    Ну если прям так хочется трехмерности: логин-домен-значения, то могёшь для
    каждого логина создавать базу, в этой базе таблицу "домен(ы)", и в них уже значения.

    Короча, планировать сначала надо, решений дох...я.

    > 1) XML-конфиг

    XML удобен для юзеров. Например цвет кнопак менять
    > 2) sqlite база

    эта хрень для работы с приложениями.
    > 3) ваши варианты...

    Голый текст:
    ключ = значения до первого "\n"
    ключ(аргумент) = значения до первого "\n"

    и парсер на C и regexp :D

    В последней профит: Аццкая скорость, непортабельность (с работы не выгонят).
    MySQL для работы типа "наотибись и так полно дел".

  • Посоветуйте способ хранения конфигов, !*! universite, 00:08 , 23-Дек-14 (3) –1
    > Имеется самопальный хостинг.
    > Конфиги nginx, apache и php-fpm генерируется на основе шаблонов и файла данных
    > $ cat domain.ip.list
    >
     
    > # login domain ipv4 ipv6 proxy ipv4 proxy ipv6 zz-nginx-php-zz|zz-nginx-apache-zz
    > yy-mail-yy
    > ynek ynek.biz  5.11.11.11 2001:4000:1:1234::1 127.0.0.1 zz-nginx-apache-zz
    > ynek frontend.ynek.biz 5.11.11.11 2001:4000:1:1234::1   zz-nginx-php-zz
    > ...
    >

    нашел интересный стиль - record-jar style http://www.catb.org/esr/writings/taoup/html/ch05s02.html#id2...


    Planet: Mercury
    Orbital-Radius: 57,910,000 km
    Diameter: 4,880 km
    Mass: 3.30e23 kg
    %%
    Planet: Venus
    Orbital-Radius: 108,200,000 km
    Diameter: 12,103.6 km
    Mass: 4.869e24 kg
    %%
    Planet: Earth
    Orbital-Radius: 149,600,000 km
    Diameter: 12,756.3 km
    Mass: 5.972e24 kg
    Moons: Luna

    Осталось написать парсинг значений по конкретному значению login...


    %%
    login: default
    domain: default.com
    ipv4:   10.10.10.10
    ipv6:   2001:4000:1:1234::1
    proxy ipv4:     127.0.0.1
    proxy ipv6:     null
    zz-nginx-php-zz:        yes
    zz-apache-zz:   null
    yy-mail-yy:     null
    %%
    ...

  • Посоветуйте способ хранения конфигов, !*! fantom, 15:12 , 23-Дек-14 (4)
    >[оверквотинг удален]
    > yy-mail-yy
    > ynek ynek.biz  5.11.11.11 2001:4000:1:1234::1 127.0.0.1 zz-nginx-apache-zz
    > ynek frontend.ynek.biz 5.11.11.11 2001:4000:1:1234::1   zz-nginx-php-zz
    > ...
    >
    > Хочется по ключу login-domain всунуть еще десятка два параметров.
    > Поэтому встал вопрос смены файла данных на:
    > 1) XML-конфиг
    > 2) sqlite база
    > 3) ваши варианты...

    У вас де-факто стоит выбор типа базы данных,
    SQL
    xml

    да хоть тот же ldap
    Если хочется потенциальной масштабируемости - то sql или ldap,
    Но это приведет к необходимости обслуживания еще одного сервиса.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру