We have conducted a few more tests and followed some of your suggestions by email to improve HLS playback time and failures to some users, which might be related to this problem:
https://forum.flashphoner.com/threads/hls-https-pool-30-thread-427-blocked.13288/
We are noticing that memory and FD is leaking as FD count and memory consumption grows indefinitely and can only be freed after a service restart. We have conducted tests with 1 broadcaster, 10 broadcasters, 20 broadcasters and 50 broadcasters, with no more than 3 subscribers per broadcasters and in all cases we noticed that FD count and memory grows indefinitely.
Server specification:
2 x 2.3GHz Intel Xeon-Skylake (6140-G) - 72 cores
64GB RAM
Debian Debian 9.2.0-64 Minimal
openjdk version "1.8.0_272"
OpenJDK Runtime Environment (build 1.8.0_272-8u272-b10-0+deb9u1-b10)
OpenJDK 64-Bit Server VM (build 25.272-b10, mixed mode)
wcs-core.properties:
-Xmx32G
-Xms32G
-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=70
-XX:+ExplicitGCInvokesConcurrent
-Dsun.rmi.dgc.client.gcInterval=36000000000
-Dsun.rmi.dgc.server.gcInterval=3600000000
Broadcaster: RTC via Browser
Subscribers: 66% RTC / 33% HLS
Could it be a garbage collector issue? What would be the appropriated configuration to use in this scenario?
docs.flashphoner.com
Any other tip?