Hello!
I'm configuring Kamailio proxy and trying to find instructions or advises for choosing the following options: *Host specific*
- Number of cores - RAM size
*Kamailio specific*
- Number of children to fork for the UDP interfaces - Shared memory size
The proxy will not connect to the database, only route INVITEs using the dispatcher. The expected load is 70K requests per hour.
Are there any formulas for calculating the parameters?
Hello,
there is no generic magic formula, it depends a lot on the configuration file, what modules are used, if the system tracks transactions or dialogs, how many records are cached in memory (e.g, lcr or dialplan), encryption/decryptionneeds, as well as how many blocking/long time operations are done (e.g., http query, db query, ...).
Dimensioning the memory can be done by starting the Kamailio, then get the stats and see how much is the startup overhead, then you can push a set of users or calls (e.g., 10000 registrations), get again the stats and see how much was added, then you should be able to estimate how much is needed (e.g., per registration). But even here you have to work with a rough estimate, because different UAs have specific behaviour, like larger header values (e.g., for a registration Kamailio stores the callid, Contact URI, Path headers, ...).
Cheers, Daniel
On 09.03.21 12:30, Marat Gareev wrote:
Hello!
I'm configuring Kamailio proxy and trying to find instructions or advises for choosing the following options: _Host specific_
- Number of cores
- RAM size
_Kamailio specific_
- Number of children to fork for the UDP interfaces
- Shared memory size
The proxy will not connect to the database, only route INVITEs using the dispatcher. The expected load is 70K requests per hour.
Are there any formulas for calculating the parameters?
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
I see. Thanks for the advice, Daniel.
Marat
ср, 17 мар. 2021 г. в 10:28, Daniel-Constantin Mierla miconda@gmail.com:
Hello,
there is no generic magic formula, it depends a lot on the configuration file, what modules are used, if the system tracks transactions or dialogs, how many records are cached in memory (e.g, lcr or dialplan), encryption/decryptionneeds, as well as how many blocking/long time operations are done (e.g., http query, db query, ...).
Dimensioning the memory can be done by starting the Kamailio, then get the stats and see how much is the startup overhead, then you can push a set of users or calls (e.g., 10000 registrations), get again the stats and see how much was added, then you should be able to estimate how much is needed (e.g., per registration). But even here you have to work with a rough estimate, because different UAs have specific behaviour, like larger header values (e.g., for a registration Kamailio stores the callid, Contact URI, Path headers, ...).
Cheers, Daniel On 09.03.21 12:30, Marat Gareev wrote:
Hello!
I'm configuring Kamailio proxy and trying to find instructions or advises for choosing the following options: *Host specific*
- Number of cores
- RAM size
*Kamailio specific*
- Number of children to fork for the UDP interfaces
- Shared memory size
The proxy will not connect to the database, only route INVITEs using the dispatcher. The expected load is 70K requests per hour.
Are there any formulas for calculating the parameters?
Kamailio (SER) - Users Mailing Listsr-users@lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda Funding: https://www.paypal.me/dcmierla