rlm_perl with huge load (~1000-1500 request per minute)
A.L.M.Buxey at lboro.ac.uk
A.L.M.Buxey at lboro.ac.uk
Mon Feb 11 16:43:22 CET 2008
Hi,
> Hello!
>
> i use freeradiusd 1.7, rlm_perl with thread conf:
>
> thread pool {
> start_servers = 100
> max_servers = 1500
> min_spare_servers = 1
> max_spare_servers = 10
> max_requests_per_server = 10
> }
>
> rlm_sql uses mysql.
>
> All works fine, but sometime, at moment with high load:
>
> Error: Discarding duplicate request from client nas_4:63429 - ID: 154 due to unfinished request 2176280
>
> and radiusd like "frozen", take 99% of CPU time, and not response for
> client's request.
>
> FreeBSD 6.3, Hardware is adequate - 2xXeon with 2 Gb Ram.
>
> any ideas?
yep - your database cant keep up with either the authentication traffic,
the accounting traffic or both.
try using sql_log for the accounting - to take it out of 100% realtime
for each incoming packet.
also your config looks a bit wonky.
> thread pool {
> start_servers = 100
> max_servers = 1500
> min_spare_servers = 1
> max_spare_servers = 10
> max_requests_per_server = 10
> }
start servers = 100
max spare servers = 10
so the first thing it has to do it kill a load off(!) - set the spare to 100.
how many SQL threads are you running?
alan
More information about the Freeradius-Users
mailing list