0

Hey guys I am having a big problem and i need some advice .

I have a Dedicated server with those informations :

  • Atom C2750 8/8t 2,4 / 2,6 GHz
  • 16 GB RAM DDR3 1600MHz
  • 12TB
  • 500Mbps Bandwidth
  • List item
  • 1Gbps Network Burst

I am running a website using Nodejs where users can download high volume files .

The website evolved rapidly and I am having 10K users per day and an average of 1K concurrent users (downloads).

The problem is the server is getting lower and lower download speed on client's side so I have added a throttle to the downloads to 800Kb/s , it did help a bit but the problem remains the same what should I ?

Thanks

4

1 回答 1

0

你必须弄清楚你最糟糕的瓶颈在哪里。您将不得不设计一些测量和测试,也许还有一些计算来帮助确定瓶颈在哪里。

以下是一些可能性:

  1. 通过服务器以太网连接到 Internet 的总服务器带宽。 如果您有 1K 用户都在尝试下载某些内容,并且您的总带宽为 500Mbps,那么每个用户只能获得 0.5Mbps 或 500Kbps。此时,您需要缩减数据、减少用户数量或增加服务器带宽。

  2. 服务器 CPU。 这应该很容易检测到。检查您的 CPU 利用率。如果您的 node.js 进程正在使用 100% 的 CPU,那么您的 CPU 受限并且您需要更快的计算机,或者如果您有一个多 CPU 处理器,您可以将您的服务器集群在同一台主机上以获得更多的 CPU 工作为你。如果您没有多 CPU 进程,则在多台服务器上获取一个或集群(想法是您需要更多 CPU)。虽然我不知道您是否受 CPU 限制(我怀疑您更可能受带宽限制),但这款 Atom C2750 有 8 个内核,因此它有利于集群,但与其他英特尔 CPU 相比,每个内核并不是特别快。

  3. 网卡。 您的网卡可能会阻碍您并且没有完全饱和您的带宽。例如,如果您的服务器只有 100Mbps 的网络连接,那么这就是您可以使用的最大带宽。如果你认为你的服务器应该有一个 1Gbps 的网络连接,那么你需要确保你确实获得了这么快的链接。

仅供参考,如果您有很多用户在较长时间内下载内容,那么 1Gbps 网络突发可能对您没有多大帮助。这对于突然和短暂的活动高峰最有用,而不是对于持续的高负载。

于 2017-08-18T02:24:06.077 回答