On 11/21/2016 06:44 AM, Daniel-Constantin Mierla wrote:
At this moment, from what I remember by heart, mysql module and async (when using async_task_route()) use async_workers from the core.
What about sql_query_async()? I assume that uses core async_workers too.
I don't recall exactly, but somehow I planned to switch async module to use only processes from the core, but I thought that it can break existing configs.
To answer further, you don't need to keep them in sycn and you don't need core async workers if you use only async_route() (or async_sleep(), but this one has some traps highlighted in the readme, so I try not to promote it that much).
What kind of traps? :-) I don't really see anything in the docs for async_asleep() that sets off alarm bells in my mind.
At the moment I'm only using async_route(), yet this is the process situation:
[root@allegro-4 routes]# kamcmd -s /tmp/kamailio_ctl ps 27621 main process - attendant 27623 udp receiver child=0 sock=10.150.20.6:5060 27624 udp receiver child=1 sock=10.150.20.6:5060 27625 udp receiver child=2 sock=10.150.20.6:5060 27626 udp receiver child=3 sock=10.150.20.6:5060 27627 udp receiver child=4 sock=10.150.20.6:5060 27629 udp receiver child=5 sock=10.150.20.6:5060 27630 udp receiver child=6 sock=10.150.20.6:5060 27632 udp receiver child=7 sock=10.150.20.6:5060 27635 slow timer 27638 timer 27639 secondary timer 27641 Async Task Worker 27642 Async Task Worker 27644 Async Task Worker 27647 Async Task Worker 27650 Async Task Worker 27652 Async Task Worker 27654 Async Task Worker 27656 Async Task Worker 27658 MI FIFO 27661 ctl handler 27663 RTIMER USEC EXEC 27664 RTIMER USEC EXEC 27666 RTIMER USEC EXEC 27669 RTIMER USEC EXEC 27672 RTIMER USEC EXEC 27674 RTIMER USEC EXEC 27676 RTIMER USEC EXEC 27678 ASYNC MOD TIMER 27680 ASYNC MOD TIMER 27682 ASYNC MOD TIMER 27684 ASYNC MOD TIMER 27686 ASYNC MOD TIMER 27688 ASYNC MOD TIMER 27690 ASYNC MOD TIMER 27692 ASYNC MOD TIMER 27694 Dialog KA Timer 27696 Dialog Clean Timer 27700 tcp main process
So it is safe to remove the async_workers declaration entirely or set it to 0, and I can still benefit from 8 async processes for async_route()?
-- Alex