stasis: Add setting subscription congestion levels.

Stasis subscriptions and message routers create taskprocessors to process
the event messages.  API calls are needed to be able to set the congestion
levels of these taskprocessors for selected subscriptions and message
routers.

* Updated CDR, CEL, and manager's stasis subscription congestion levels
based upon stress testing.  Increased the congestion levels to reduce the
potential for bursty call setup/teardown activity from triggering the
taskprocessor overload alert.  CDRs in particular need an extra high
congestion level because they can take awhile to process the stasis
messages.

ASTERISK-26088
Reported by:  Richard Mudgett

Change-Id: Id0a716394b4eee746dd158acc63d703902450244
This commit is contained in:
Richard Mudgett
2016-06-03 11:35:49 -05:00
parent 110d772467
commit 557333ea4c
7 changed files with 61 additions and 0 deletions

View File

@@ -289,6 +289,18 @@ void stasis_message_router_publish_sync(struct stasis_message_router *router,
ao2_cleanup(router);
}
int stasis_message_router_set_congestion_limits(struct stasis_message_router *router,
long low_water, long high_water)
{
int res = -1;
if (router) {
res = stasis_subscription_set_congestion_limits(router->subscription,
low_water, high_water);
}
return res;
}
int stasis_message_router_add(struct stasis_message_router *router,
struct stasis_message_type *message_type,
stasis_subscription_cb callback, void *data)