ichthyandr Опубликовано 4 октября, 2012 · Жалоба Всем приветы, интересует вот что: во всех примерах, которые видел, обращение к mysql из rlm_perl функций ( authorization, accounting ... т.д.) производится через создание DBI коннектора в каждой функции. Как это сказывается на производительности? Можно ли создать глобальный DBI коннектор (например, объявив его через our ) и использовать его в вызовах rlm_perl? Спасибо. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Wingman Опубликовано 4 октября, 2012 · Жалоба Насколько я понимаю - rlm_perl грузится при запуске радиуса и висит в памяти, соответственно и соединение с БД одно и то же также висит Единственное - стОит, возможно, при каждом обращении вызывать ф-ию DBI->connect_cached, которая восстановит соединение, если вдруг оно оборвалось Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
andriko Опубликовано 5 октября, 2012 · Жалоба хмм у меня коннект в sub CLONE(){ $dbh = DBI->connect('DBI:mysql:radius;host=localhost;port=3306', db_user, db_pass) or return RLM_MODULE_FAIL; } правда mysqladmin показывает больше колличество коннектов от самого радиуса чем от скрипта, правда в скрипте не для всех функций радиуса используется, только authorize и post_auth Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ichthyandr Опубликовано 10 октября, 2012 · Жалоба хмм у меня коннект в sub CLONE(){ $dbh = DBI->connect('DBI:mysql:radius;host=localhost;port=3306', db_user, db_pass) or return RLM_MODULE_FAIL; } правда mysqladmin показывает больше колличество коннектов от самого радиуса чем от скрипта, правда в скрипте не для всех функций радиуса используется, только authorize и post_auth что-то я не видел в примерах stub CLONE для rlm_perl freeradius2 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
andriko Опубликовано 11 октября, 2012 · Жалоба что-то я не видел в примерах stub CLONE для rlm_perl freeradius2 значит надо искать не в примерах :) не помню откуда взял, давно было. Быстрей всего с freeradius-users лист. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
MagMike Опубликовано 12 октября, 2012 · Жалоба значит надо искать не в примерах :) не помню откуда взял, давно было. Быстрей всего с freeradius-users лист. в src/modules/rlm_perl/example.pl из исходников freeradius'а # If you are using DBI and do some queries to DB, please be sure to # use the CLONE function to initialize the DBI connection to DB. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ichthyandr Опубликовано 12 октября, 2012 · Жалоба значит надо искать не в примерах :) не помню откуда взял, давно было. Быстрей всего с freeradius-users лист. в src/modules/rlm_perl/example.pl из исходников freeradius'а # If you are using DBI and do some queries to DB, please be sure to # use the CLONE function to initialize the DBI connection to DB. ok, спасибо, там еще не смотрел :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...