首页 > 解决方案 > 每个 JVM 实例的 Java 最大速度是否达到 4Gbps 左右?

问题描述

Wowza 给我们带来了麻烦,没有超过 6k 的并发用户,有时会冻结在几百个。它崩溃并开始杀死会话。我们会在每个流媒体事件中多次重启 Wowza。

我们的服务器规格:

DL380 Gen10
2x Intel Xeon Silver 4110 / 2.1 GHz
64 GB RAM
300 GB HDD
The network 10 GB dedicated
Some servers running Centos 6, others Centos 7
Java version 1.8.0_20 64-bit
Wowza streaming engine 4.2.0

并被告知:

如果您在其前面放置一个 CDN,Wowza 可以轻松扩展到数百万(这很容易做到)。6K 用户关闭单个实例根本不会发生。一方面,Java 每个 JVM 实例的最大速度约为 4Gbps。因此,即使您的机器上有一个 10G NIC,如果您想使用全部带宽,您也需要运行多个实例。

和:

您可以在 10gb 网络 @ 2mbps 上执行多少个 720 流?

如果没有网络开销,大约是 5,000

由于 java 的限制为 4gbps,每个实例只有 2,000 个。那么,如果您确实设法利用该 10Gb 网络并使其饱和,那么人们在其他服务器上访问的所有其他应用程序会发生什么情况?

如果他们想要更多的流,他们需要在多个数据中心的边缘服务器,或者必须以某种方式安装更多的 10Gb 网络。

这仅适用于流式传输。不知道转码会在 CPU 负载和磁盘 IO 方面增加什么。

所以我开始寻找Wowza的替代品。由于我们业务的性质,我们不能使用 CDN 或云托管,除非客户很少。一切都应该在内部托管,在客户的数据中心。

我找到了这篇文章并联系了作者,向他询问 Flussonic 以及它与 Wowza 的比较。他说:

我无法谈论您在 Java 中看到的 4 Gbps 限制。您的 Wowza 实例也可能配置不正确。我们需要查看您的配置参数以了解发生了什么。

通过将 Wowza 和 Flussonic 媒体服务器与我们的点对点 (p2p) CDN 服务配对,我们在扩展 Wowza 和 Flussonic 媒体服务器方面取得了巨大成功。这就是我们在 2016 年写的那篇文章的重点

因为我们将服务器必须处理的 HTTP 请求数量减少了多达 90%(或更多),所以我们将每台服务器的容量增加了 10 倍——这意味着每台服务器可以处理 10 倍的并发查看器数量。

即使在 Wowza 论坛上,也有人说 Java 每个 JVM 实例的最大速度约为 5Gbps。其他人说这个数字是不正确的,或者是编造的。

由于我们业务的性质,这个数字虽然很愚蠢,但对我们来说意义重大。如果 Java 不能处理每个实例超过 7k 的查看器,我们需要召开会议并讨论如何处理 Wowza。

那么每个 JVM 实例 Java 的最大速度是 4Gbps 还是 5Gbps 是真的吗?

标签: javajava-8video-streaminghttp-live-streamingwowza

解决方案


推荐阅读