![]() |
|
Модераторы: ginnie, korob2001 |
![]()
|
|
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
есть программа PowerDNS на С++ (и другие postfix) там всегда держиться одно соединение с СУБД, как только добавляется что-то в таблицы (или изменяется, или удаляется) , то программа сразу реагирует...
как это называется? в perl это можно сделать? Это сообщение отредактировал(а) gcc - 8.9.2008, 15:45 |
|||
|
||||
| sir_nuf_nuf |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 6.1.2008 Репутация: нет Всего: 31 |
gcc, ничего не понятно...
Если вам нужно поддерживать соединение с БД - то вариантов куча. Зависит от того, что у вас за программа: если просто скрипт - то достаточно создать соединение и не разрывать его (делать Ping иногда) если mod_perl скрипт - то есть Apache::DBI если CGI скрипт - то никак. ибо каждый раз - новый процесс запускается. Если вы хотите получать уведомления об изменениях в базе данных - думаю такого нет (я не прав ?) Вам нужно самому время от времен обращаться к БД - что бы узнать изменения |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
ну postfix держит соединение всегда (по крайней мере так видно)
если я добавлю что-то в таблицу, он создает каталог сразу же (почтовые письма туда будет складывает), если я изменю в таблице, то он изменяет каталог с доменом или катлог с почтовым ящиком, и удаляет так же... (или я перепутал всё? но именно так и работает, или синхронизирует что ли с дампом как-то?) удобно было если это так можно сделать... Это сообщение отредактировал(а) gcc - 8.9.2008, 16:30 |
|||
|
||||
| ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
Коллеги, похоже на разговор разработчика с заказчиком
gcc, можно задавать конкретные вопросы? Для информации, postfix не разрывает соединение с БД только при использовании специального proxy-модуля. При каждом действии выполняются необходимые запросы к БД, поэтому все изменения в БД корректно обрабатываются. Какой именно функционал нужен Вашей программе и что это за программа (sir_nuf_nuf, варианты уже описал)? -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
| sir_nuf_nuf |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 6.1.2008 Репутация: нет Всего: 31 |
gcc, ага понял.
варианта 3 1) ваше приложение (типа демона postfix) запущено постоянно и раз в секунду (минуту..) делает запрос к БД. Соответственно синхронизует таблицы и свои структуры данных 2) вы пишете UDF для mysql (самодельная функция), которая при будет отправлять запросы вашему приложению, например через TCP/IP. А на все интересующие вас события (например вставка в таблицу) вешаете тригер, который вызывает эту функцию, которая обращается к вашему приложению, которое делает все что нужно =) 3) возможно существует какая - то фичча, встроенная в протокол БД, когда БД сама обращается к клиенту. Но это МАЛОВЕРОЯТНО. Никогда про такое не слышал.. |
|||
|
||||
| gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
1) давно хотел узнать именно про это, потому что хотел сделать конфиг apache22 в бд, то есть чтобы конфигурировать именно из БД для удобства. Если это делать в самой прогармме взамен текстовых файлов, то нужно пол apache22 переписывать и всё его модули... (этого нету ни где) (потом передумал)
2) самое главное хотел, вообще-то, создавать аккаунты на сервере, то есть читать с таблицы и создавать так же как и postfix ... думаю что этот вариант будет хорший
второй пункт - это и есть конкретный вопрос...
это только proxy-модуль это делает? если нет, то как это называеться? чтобы найти в гугле, а то не знаю что искать, если конечно получиться хоть что-то... Это сообщение отредактировал(а) gcc - 8.9.2008, 17:09 |
||||
|
|||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
про прокси я ничего не нашел...
|
|||
|
||||
| ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
Уважаемый gcc, про proxy-модуль я писал по памяти. Сейчас посмотрел Postfix MySQL Howto, там написано, что "сильнонагруженные почтовые сервера, использующие mysql maps создают достаточно много параллельных соединений к СУБД. Их количество можно уменьшить, используя модуль Postfix proxymap." Следовательно proxymap создает пул соединений с СУБД, и раздает их процессам postfix, к Вашей теме это отношения не имеет.
Не могли бы Вы пояснить, зачем нужно хранить конфигурацию web-сервера в БД? Мне такое в голову пока не приходило. -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
Уважаемый ginnie, зачем хранить таблицу в текстовых файлах? или зачем тогда сделали возможность использование СУБД в DNS, Samba, почта, PAM, ftp, etc? для удобства изменения таблицы конфигов вообще-то... если бы была возможность быстро это сделать, а так половину apache22 и все его моды надо переписывать Это сообщение отредактировал(а) gcc - 14.9.2008, 00:43 |
|||
|
||||
| ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
Уважаемый gcc, не погли бы Вы пояснить в чем для Вас удобство изменения конфигурации в БД по сравнению с текстовым файлом конфигурации?
-------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
Уважаемый ginnie, управлять с помощью веб-скрипвто, уже это не надо, я просто так написал (думал чтобы удобно было, вообще-то сайтов штук 40)
ЗЫ кстате, где-то нашел что apache13 со всеми директивами может работаеть с MySQL и SQLite Это сообщение отредактировал(а) gcc - 15.9.2008, 13:00 |
|||
|
||||
![]()
|
| Правила форума "Perl: Системное программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |