Skip to content

Any help with "highload" #206

Description

@magicprinc

I'm testing outbound calls via ARI (using ari4java :) ~100 simultaneous calls.
Calls are short-lived — a dedicated context in extensions.conf hangs up immediately with different cause codes for testing purposes.
Fairly quickly, I start getting errors and calls ~ stop going through.

Could you advise:

  • Is this likely a misconfiguration on the client (ari4java) or Asterisk side?
  • Or is ARI simply not designed to handle this level of concurrent origination throughput?

Any guidance on recommended limits or tuning would be much appreciated.
Thanks! 🙏

2026-07-03 12:53:55.771  WARN 1 --- [voip] [ntLoopGroup-2-2] i.netty.util.concurrent.DefaultPromise   : An exception was thrown by ch.loway.oss.ari4java.tools.http.NettyHttpClient$$Lambda/0x000000001ea9b050.operationComplete()
java.lang.NullPointerException: Cannot invoke "ch.loway.oss.ari4java.tools.http.NettyHttpClientHandler.reset()" because "handler" is null
 at ch.loway.oss.ari4java.tools.http.NettyHttpClient.lambda$httpActionAsync$3(NettyHttpClient.java:398) ~[ari4java-0.18.0.jar!/:0.18.0]
 at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:604) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:571) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.concurrent.DefaultPromise.access$200(DefaultPromise.java:37) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.concurrent.DefaultPromise$1.run(DefaultPromise.java:517) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:148) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:141) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:535) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:201) ~[netty-transport-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1195) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.2.15.Final.jar!/:4.2.15.Final]
 at java.base/java.lang.Thread.run(Thread.java:1474) ~[na:na]

2026-07-03 13:16:26.788 ERROR 1 --- [voip] [ool-2-thread-12] c.d.voip.service.AsteriskService         : Could not find state for channel 1783084563.3601
[Jul  3 14:34:15] WARNING[20752] res_http_websocket.c: Web socket closed abruptly
[Jul  3 14:34:15] WARNING[20752] ari/ari_websockets.c: WebSocket read error: Success
[Jul  3 15:51:30] WARNING[21867] res_http_websocket.c: Web socket closed abruptly
[Jul  3 15:51:30] WARNING[21867] ari/ari_websockets.c: WebSocket read error: Success
[Jul  3 15:59:25] WARNING[22704] stasis/app.c: Not creating context 'stasis-DevinoTest' for Stasis application 'DevinoTest' because it already exists
[Jul  3 16:10:33] WARNING[22822] stasis/app.c: Not creating context 'stasis-DevinoTest' for Stasis application 'DevinoTest' because it already exists

PS: At slow speed ~ 5-10 calls - everything works fine

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions