Jump to content

Recommended Posts

Posted

Всем приветы,

интересует вот что:

во всех примерах, которые видел, обращение к mysql из rlm_perl функций ( authorization, accounting ... т.д.) производится через создание DBI коннектора в каждой функции. Как это сказывается на производительности? Можно ли создать глобальный DBI коннектор (например, объявив его через our ) и использовать его в вызовах rlm_perl?

Спасибо.

Posted

Насколько я понимаю - rlm_perl грузится при запуске радиуса и висит в памяти, соответственно и соединение с БД одно и то же также висит

Единственное - стОит, возможно, при каждом обращении вызывать ф-ию DBI->connect_cached, которая восстановит соединение, если вдруг оно оборвалось

Posted

хмм у меня коннект в

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

Posted

хмм у меня коннект в

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

Posted

что-то я не видел в примерах stub CLONE для rlm_perl freeradius2

 

значит надо искать не в примерах :) не помню откуда взял, давно было. Быстрей всего с freeradius-users лист.

Posted

значит надо искать не в примерах :) не помню откуда взял, давно было. Быстрей всего с 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.

Posted

значит надо искать не в примерах :) не помню откуда взял, давно было. Быстрей всего с 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, спасибо, там еще не смотрел :)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.