I use the /misc/examples/kemi/kamailio-basic-kemi.cfg
with log
disabled. No log is printed at all, on a Intel(R) Core(TM) i7-2600K
CPU @ 3.40GHz.
What's your results ?
# and my lua file
-- Kamailio - equivalent of routing blocks in Lua
--
-- KSR - the new dynamic object exporting Kamailio functions (kemi)
-- sr - the old static object exporting Kamailio functions
--
-- Relevant remarks:
-- * do not execute Lua 'exit' - that will kill Lua interpreter which is
-- embedded in Kamailio, resulting in killing Kamailio
-- * use KSR.x.exit() to trigger the stop of executing the script
-- * KSR.drop() is only marking the SIP message for drop, but doesn't
stop
-- the execution of the script. Use KSR.x.exit() after it or KSR.x.drop()
--
-- global variables corresponding to defined values (e.g., flags) in
kamailio.cfg
--FLT_ACC=1
-- SIP request routing
-- equivalent of request_route{}
function ksr_request_route()
KSR.info("===== request route\n");
end
function ksr_core_received()
KSR.x.exit();
end
On Tue, Nov 12, 2019 at 4:21 PM Daniel-Constantin Mierla
<miconda(a)gmail.com <mailto:miconda@gmail.com>> wrote:
Do you run with high debug value (lot of log messages)? Because I
don't get similar results to yours. Maybe you can share full
kamailio.cfg and lua script for both cases.
Cheers,
Daniel
On 12.11.19 22:11, GG GG wrote:
Hello,
I removed KSR.x.exit() and I got same results for cpu usage and
Recv-Q.
On Tue, Nov 12, 2019 at 3:56 PM Daniel-Constantin Mierla
<miconda(a)gmail.com <mailto:miconda@gmail.com>> wrote:
Hello,
can you remove the KSR.x.exit() and test again? It will be
the same effect from sip routing point of view, just to see
what is the result.
Because Lua 'exit' cannot be used, KSR.x.exit() is a
workaround relying on error/exception handling with string
comparison that I did.
However, overall KSR.x.exit() alone has an insignificant
effect on a production configuration, based on the tests I
did for kamailio 5.2, you can look for more at:
-
https://www.kamailio.org/wiki/kemi/performance-tests/5.2.x
Cheers,
Daniel
On 12.11.19 21:28, GG GG wrote:
Hi Daniel,
For lua example, it's just an error when writing my email...
in my config file I have KSR.x.exit();
I have not tested a more complex config, but I'm curious
about kemi framework and how it works. So before anything
else I made a simple test to know the cpu overhead.
For this test, I noticed that the Recv-Q of kamailio remains
high with kemi/lua, and with the native one remains to 0,
with children=1 of course.
Next step, is to use a more complex config file.
On Tue, Nov 12, 2019 at 3:00 PM Daniel-Constantin Mierla
<miconda(a)gmail.com <mailto:miconda@gmail.com>> wrote:
Hello,
is it really just 'exit' in the ksr_core_received()?
Because that should shut down kamailio.
Anyhow, practically with the examples here, you test the
difference between looking up a function and doing exit
in native kamailio.cfg and lua script, which is really
marginal comparing with the rest of configuration file
in a usual production deployment. Have you tested with a
more complex set of actions/functions?
Cheers,
Daniel
On 12.11.19 17:36, GG GG wrote:
Hi!
I just made a simple test performance between native
script and kemi/lua with
the event_route[core:msg-received] callback.
# lua script children=1 cpu.process=100%
function ksr_core_received()
exit;
end
# native script children=1 cpu.process=70%
event_route[core:msg-received] {
exit;
}
# tested with udp 5060, 1000 Mbits/sec
iperf -c 127.0.0.1 -p 5060 -u -b1000m
I don't know if it's normal and what we should expect
from kemi, but I would like to share this with you.
Maybe someone could confirm the performance difference.
Have a good day !
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org <mailto:sr-users@lists.kamailio.org>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
--
Daniel-Constantin Mierla --
www.asipto.com <http://www.asipto.com>
www.twitter.com/miconda <http://www.twitter.com/miconda> --
www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda>
Kamailio World Conference - April 27-29, 2020, in Berlin --
www.kamailioworld.com <http://www.kamailioworld.com>
--
Daniel-Constantin Mierla --
www.asipto.com <http://www.asipto.com>
www.twitter.com/miconda <http://www.twitter.com/miconda> --
www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda>
Kamailio World Conference - April 27-29, 2020, in Berlin --
www.kamailioworld.com
<http://www.kamailioworld.com>
<http://www.linkedin.com/in/miconda>
Kamailio World Conference - April 27-29, 2020, in Berlin --