From e1f942190897d28b536014d41c7b09ea3a5112a2 Mon Sep 17 00:00:00 2001 From: OpenSIPS Date: Sat, 6 Aug 2022 23:51:17 +0300 Subject: [PATCH] Rebuild documentation --- modules/clusterer/README | 146 ++++++++++++++----------- modules/clusterer/doc/contributors.xml | 8 +- 2 files changed, 88 insertions(+), 66 deletions(-) diff --git a/modules/clusterer/README b/modules/clusterer/README index 1a229a5e919..8f96c8c11e6 100644 --- a/modules/clusterer/README +++ b/modules/clusterer/README @@ -27,16 +27,17 @@ CLUSTERER Module 1.4.11. seed_fallback_interval 1.4.12. sync_timeout 1.4.13. sync_packet_max_size - 1.4.14. id_col - 1.4.15. cluster_id_col - 1.4.16. node_id_col - 1.4.17. url_col - 1.4.18. state_col - 1.4.19. no_ping_retries_col - 1.4.20. priority_col - 1.4.21. sip_addr_col - 1.4.22. flags_col - 1.4.23. description_col + 1.4.14. dispatch_jobs + 1.4.15. id_col + 1.4.16. cluster_id_col + 1.4.17. node_id_col + 1.4.18. url_col + 1.4.19. state_col + 1.4.20. no_ping_retries_col + 1.4.21. priority_col + 1.4.22. sip_addr_col + 1.4.23. flags_col + 1.4.24. description_col 1.5. Exported Functions @@ -121,26 +122,27 @@ CLUSTERER Module 1.11. Set seed_fallback_interval parameter 1.12. Set sync_timeout parameter 1.13. Set sync_packet_max_size parameter - 1.14. Set id_col parameter - 1.15. Set cluster_id_col parameter - 1.16. Set node_id_col parameter - 1.17. Set url_col parameter - 1.18. Set state_col parameter - 1.19. Set no_ping_retries_col parameter - 1.20. Set priority_col parameter - 1.21. Set sip_addr_col parameter - 1.22. Set flags_col parameter - 1.23. Set description_col parameter - 1.24. cluster_send_req() usage - 1.25. cluster_send_rpl() usage - 1.26. cluster_broadcast_req() usage - 1.27. cluster_check_addr() usage - 1.28. clusterer_list usage - 1.29. clusterer_list_topology usage - 1.30. clusterer_list_cap usage - 1.31. Example database content - clusterer table - 1.32. Node A configuration - 1.33. Node B configuration + 1.14. Set dispatch_jobs parameter + 1.15. Set id_col parameter + 1.16. Set cluster_id_col parameter + 1.17. Set node_id_col parameter + 1.18. Set url_col parameter + 1.19. Set state_col parameter + 1.20. Set no_ping_retries_col parameter + 1.21. Set priority_col parameter + 1.22. Set sip_addr_col parameter + 1.23. Set flags_col parameter + 1.24. Set description_col parameter + 1.25. cluster_send_req() usage + 1.26. cluster_send_rpl() usage + 1.27. cluster_broadcast_req() usage + 1.28. cluster_check_addr() usage + 1.29. clusterer_list usage + 1.30. clusterer_list_topology usage + 1.31. clusterer_list_cap usage + 1.32. Example database content - clusterer table + 1.33. Node A configuration + 1.34. Node B configuration Chapter 1. Admin Guide @@ -429,65 +431,85 @@ modparam("clusterer", "sync_timeout", 5) modparam("clusterer", "sync_packet_max_size", 32765) ... -1.4.14. id_col +1.4.14. dispatch_jobs + + Enables the dispatching of jobs(processing replicated data + packets) from the receiving TCP worker process to free opensips + workers (including UDP, timer processes etc.). + + This generally improves the performance of handling replication + packets in high traffic scenarios and should not be disabled. + + Nevertheless there are cases where the "thundering herd" + problem occurs which causes abnormaly high CPU loads. Disabling + this dispatching mechanism solves such issues. + + Default value is “1” (enabled). + + Example 1.14. Set dispatch_jobs parameter +... +modparam("clusterer", "dispatch_jobs", 0) +... + +1.4.15. id_col The name of the column storing an id for the table rows. Default value is “id”. - Example 1.14. Set id_col parameter + Example 1.15. Set id_col parameter ... modparam("clusterer", "id_col", "id") ... -1.4.15. cluster_id_col +1.4.16. cluster_id_col The name of the column to store the id of a cluster. Default value is “cluster_id”. - Example 1.15. Set cluster_id_col parameter + Example 1.16. Set cluster_id_col parameter ... modparam("clusterer", "cluster_id_col", "cluster_id") ... -1.4.16. node_id_col +1.4.17. node_id_col The name of the column to store the id of an instance. The values must be greater than 0. Default value is “node_id”. - Example 1.16. Set node_id_col parameter + Example 1.17. Set node_id_col parameter ... modparam("clusterer", "node_id_col", "node_id") ... -1.4.17. url_col +1.4.18. url_col The name of the column containing the instance url. The values must be greater than 0. Default value is “url”. - Example 1.17. Set url_col parameter + Example 1.18. Set url_col parameter ... modparam("clusterer", "url_col", "url") ... -1.4.18. state_col +1.4.19. state_col The name of the column storing the state of the node(enabled/disabled). Default value is “state”. - Example 1.18. Set state_col parameter + Example 1.19. Set state_col parameter ... modparam("clusterer", "state_col", "state") ... -1.4.19. no_ping_retries_col +1.4.20. no_ping_retries_col The name of the column containing the maximum number of ping retries before the link with the neighbour node is considered @@ -495,12 +517,12 @@ modparam("clusterer", "state_col", "state") Default value is “no_ping_retries”. - Example 1.19. Set no_ping_retries_col parameter + Example 1.20. Set no_ping_retries_col parameter ... modparam("clusterer", "no_ping_retries_col", "no_ping_retries") ... -1.4.20. priority_col +1.4.21. priority_col The name of the column storing the node priority to be chosen as next hop in case of same length(number of hops) paths when @@ -508,40 +530,40 @@ modparam("clusterer", "no_ping_retries_col", "no_ping_retries") Default value is “priority”. - Example 1.20. Set priority_col parameter + Example 1.21. Set priority_col parameter ... modparam("clusterer", "priority_col", "priority") ... -1.4.21. sip_addr_col +1.4.22. sip_addr_col The name of the column containing a SIP address for the node. Default value is “sip_addr”. - Example 1.21. Set sip_addr_col parameter + Example 1.22. Set sip_addr_col parameter ... modparam("clusterer", "sip_addr_col", "sip_addr") ... -1.4.22. flags_col +1.4.23. flags_col The name of the column containing the node flags. Default value is “flags”. - Example 1.22. Set flags_col parameter + Example 1.23. Set flags_col parameter ... modparam("clusterer", "flags_col", "flags") ... -1.4.23. description_col +1.4.24. description_col The name of the column containing a node description. Default value is “description”. - Example 1.23. Set description_col parameter + Example 1.24. Set description_col parameter ... modparam("clusterer", "description_col", "description") ... @@ -578,7 +600,7 @@ modparam("clusterer", "description_col", "description") This function can be used from REQUEST_ROUTE, FAILURE_ROUTE, ONREPLY_ROUTE, BRANCH_ROUTE, LOCAL_ROUTE and EVENT_ROUTE. - Example 1.24. cluster_send_req() usage + Example 1.25. cluster_send_req() usage ... # send a request cluster_send_req(1, 1, "Check USER: $fU", $var(req_tag)); @@ -622,7 +644,7 @@ route[rpl_resume] { This function can be used from REQUEST_ROUTE, FAILURE_ROUTE, ONREPLY_ROUTE, BRANCH_ROUTE, LOCAL_ROUTE and EVENT_ROUTE. - Example 1.25. cluster_send_rpl() usage + Example 1.26. cluster_send_rpl() usage ... event_route[E_CLUSTERER_REQ_RECEIVED] { cluster_send_rpl($param(cluster_id), $param(src_id), $var(my_reply), $ @@ -650,7 +672,7 @@ param(tag)); This function can be used from REQUEST_ROUTE, FAILURE_ROUTE, ONREPLY_ROUTE, BRANCH_ROUTE, LOCAL_ROUTE and EVENT_ROUTE. - Example 1.26. cluster_broadcast_req() usage + Example 1.27. cluster_broadcast_req() usage ... cluster_broadcast_req($var(cl_id), $var(share_data)); ... @@ -672,7 +694,7 @@ cluster_broadcast_req($var(cl_id), $var(share_data)); This function can be used from REQUEST_ROUTE, FAILURE_ROUTE, ONREPLY_ROUTE, BRANCH_ROUTE, LOCAL_ROUTE and EVENT_ROUTE. - Example 1.27. cluster_check_addr() usage + Example 1.28. cluster_check_addr() usage ... if (cluster_check_addr(1, $si)) { ... @@ -703,7 +725,7 @@ if (cluster_check_addr(1, $si)) { Parameters:none - Example 1.28. clusterer_list usage + Example 1.29. clusterer_list usage $ opensips-cli -x mi clusterer_list { "Clusters": [ @@ -737,7 +759,7 @@ $ opensips-cli -x mi clusterer_list Parameters:none - Example 1.29. clusterer_list_topology usage + Example 1.30. clusterer_list_topology usage $ opensips-cli -x mi clusterer_list_topology { "Clusters": [ @@ -825,7 +847,7 @@ opensips-cli -x mi cluster_broadcast_mi 1 dr_reload partition_5 Parameters:none - Example 1.30. clusterer_list_cap usage + Example 1.31. clusterer_list_cap usage $ opensips-cli -x mi clusterer_list_cap { "Clusters": [ @@ -953,7 +975,7 @@ $ opensips-cli -x mi clusterer_list_cap We insert in the the clusterer table the following: - Example 1.31. Example database content - clusterer table + Example 1.32. Example database content - clusterer table +----+------------+---------+----------------------+-------+------------ -----+----------+----------+-------+-------------+ | id | cluster_id | node_id | url | state | no_ping_ret @@ -996,7 +1018,7 @@ ries | priority | sip_addr | flags | description | configure the two instances of OpenSIPS. First, we configure Node A: - Example 1.32. Node A configuration + Example 1.33. Node A configuration ... socket= bin:192.168.0.5:5566 # bin listener for Node A @@ -1012,7 +1034,7 @@ modparam("ratelimit", "pipe_replication_cluster", 1) Similarly, the configuration for Node B is as follows: - Example 1.33. Node B configuration + Example 1.34. Node B configuration ... socket= bin:192.168.0.6:5566 # bin listener for Node B @@ -1193,7 +1215,7 @@ Chapter 3. Contributors Table 3.1. Top contributors by DevScore^(1), authored commits^(2) and lines added/removed^(3) Name DevScore Commits Lines ++ Lines -- - 1. Vlad Patrascu (@rvlad-patrascu) 276 104 10226 5336 + 1. Vlad Patrascu (@rvlad-patrascu) 277 105 10266 5336 2. Liviu Chircu (@liviuchircu) 51 37 627 443 3. Eseanu Marius Cristian (@eseanucristian) 45 10 3142 534 4. Razvan Crainea (@razvancrainea) 24 18 321 145 @@ -1224,7 +1246,7 @@ Chapter 3. Contributors Table 3.2. Most recently active contributors^(1) to this module Name Commit Activity - 1. Vlad Patrascu (@rvlad-patrascu) Jul 2016 - Jul 2022 + 1. Vlad Patrascu (@rvlad-patrascu) Jul 2016 - Aug 2022 2. Razvan Crainea (@razvancrainea) Nov 2015 - May 2022 3. Bogdan-Andrei Iancu (@bogdan-iancu) Apr 2016 - May 2021 4. Liviu Chircu (@liviuchircu) Mar 2016 - Mar 2021 diff --git a/modules/clusterer/doc/contributors.xml b/modules/clusterer/doc/contributors.xml index b63cd9aa59e..ae051fe6f9d 100644 --- a/modules/clusterer/doc/contributors.xml +++ b/modules/clusterer/doc/contributors.xml @@ -21,9 +21,9 @@ 1. Vlad Patrascu (@rvlad-patrascu) - 276 - 104 - 10226 + 277 + 105 + 10266 5336 @@ -129,7 +129,7 @@ 1. Vlad Patrascu (@rvlad-patrascu) - Jul 2016 - Jul 2022 + Jul 2016 - Aug 2022 2.