下载速度慢
Low download speed
大家好,我遇到了一个大问题,我需要一些建议。
我有一个包含这些信息的专用服务器:
- 凌动 C2750 8/8t 2,4 / 2,6 GHz
- 16 GB 内存 DDR3 1600MHz
- 12TB
- 500Mbps 带宽
- 列表项
- 1Gbps 网络突发
我是 运行 一个使用 Nodejs 的网站,用户可以在其中下载大量文件。
网站发展迅速,我每天有 10K 用户,平均有 1K 并发用户(下载)。
问题是客户端的服务器下载速度越来越慢,所以我将下载速度限制为 800Kb/s,这确实有点帮助,但问题仍然存在,我应该怎么办?
谢谢
你必须弄清楚你最严重的瓶颈在哪里。您将不得不设计一些测量和测试,也许还需要设计一些计算来帮助确定瓶颈所在。
这里有一些可能性:
通过您的服务器以太网连接到 Internet 的总服务器带宽。如果您有 1000 名用户都在尝试下载内容,而您的总带宽为 500Mbps,那么每个用户只能获得 0.5Mbps 或 500Kbps。到那时,您需要收缩数据、减少用户数量或增加服务器带宽。
Server CPU. 这个应该很容易检测到。检查您的 CPU 利用率。如果您的 node.js 进程使用了 100% 的 CPU,那么您将受到 CPU 的限制,您要么需要一台更快的计算机,要么如果您有一个多 CPU 处理器,您可以将您的服务器集群在同一台主机上以获得更多 CPU 为您工作。如果你没有多 CPU 进程,那么在多个服务器上获得一个或集群(想法是你需要更多 CPUs)。虽然我不知道你是否受 CPU 限制(我怀疑你更有可能受带宽限制),但这个 Atom C2750 有 8 个内核,因此它有利于集群,但每个内核与其他内核相比并不是特别快英特尔 CPUs.
网卡。可能是您的网卡阻碍了您的工作,并没有使您的带宽完全饱和。例如,如果您的服务器只有 100Mbps 的网络连接,那么这就是您可以使用的最大带宽。如果您认为您应该有一个 1Gbps 的网络连接到您的服务器,那么您需要确保您确实获得了那么快 link.
仅供参考,如果您有大量用户在较长时间内下载内容,1Gbps 网络突发可能帮不了您多少。这对于 activity 的突然和短暂的峰值最有用,而不是对于连续的高负载。
大家好,我遇到了一个大问题,我需要一些建议。
我有一个包含这些信息的专用服务器:
- 凌动 C2750 8/8t 2,4 / 2,6 GHz
- 16 GB 内存 DDR3 1600MHz
- 12TB
- 500Mbps 带宽
- 列表项
- 1Gbps 网络突发
我是 运行 一个使用 Nodejs 的网站,用户可以在其中下载大量文件。
网站发展迅速,我每天有 10K 用户,平均有 1K 并发用户(下载)。
问题是客户端的服务器下载速度越来越慢,所以我将下载速度限制为 800Kb/s,这确实有点帮助,但问题仍然存在,我应该怎么办?
谢谢
你必须弄清楚你最严重的瓶颈在哪里。您将不得不设计一些测量和测试,也许还需要设计一些计算来帮助确定瓶颈所在。
这里有一些可能性:
通过您的服务器以太网连接到 Internet 的总服务器带宽。如果您有 1000 名用户都在尝试下载内容,而您的总带宽为 500Mbps,那么每个用户只能获得 0.5Mbps 或 500Kbps。到那时,您需要收缩数据、减少用户数量或增加服务器带宽。
Server CPU. 这个应该很容易检测到。检查您的 CPU 利用率。如果您的 node.js 进程使用了 100% 的 CPU,那么您将受到 CPU 的限制,您要么需要一台更快的计算机,要么如果您有一个多 CPU 处理器,您可以将您的服务器集群在同一台主机上以获得更多 CPU 为您工作。如果你没有多 CPU 进程,那么在多个服务器上获得一个或集群(想法是你需要更多 CPUs)。虽然我不知道你是否受 CPU 限制(我怀疑你更有可能受带宽限制),但这个 Atom C2750 有 8 个内核,因此它有利于集群,但每个内核与其他内核相比并不是特别快英特尔 CPUs.
网卡。可能是您的网卡阻碍了您的工作,并没有使您的带宽完全饱和。例如,如果您的服务器只有 100Mbps 的网络连接,那么这就是您可以使用的最大带宽。如果您认为您应该有一个 1Gbps 的网络连接到您的服务器,那么您需要确保您确实获得了那么快 link.
仅供参考,如果您有大量用户在较长时间内下载内容,1Gbps 网络突发可能帮不了您多少。这对于 activity 的突然和短暂的峰值最有用,而不是对于连续的高负载。