select一个networking服务器configuration

我有一个网站,从每天10次访问,到几天几乎每天100次,现在每天约有800次访问。

到目前为止,我一直在使用一个512MB RAM的VPS和共享的CPU(我认为它在500Mhz到1Ghz之间)。

我想服务的一些要求可能会很慢,因为我看到跳出率很高(主要的stream量是在我国的夜晚,而且整个服务器在我国是白天是免费的,所以当我检查在我的白天时间,加载时间似乎是罚款)。

在任何情况下,有人可以告诉我一个最小的专用服务器configuration(Ram和CPU和端口速度),可以处理下列事情,而不会放慢任何请求:

  • 每天100K次访问(记住未来)。
  • 每天500K页面浏览量。 (每次访问5次平均)
  • 每个页面都是100KB(一个图像,几个缩略图,一些杂项东西..通常情况下,它会小得多,但在计算上是悲观的)。
  • 假设峰值负载可以是平均负载的5倍(负载绝不会在24小时内均匀分布)

现在我不确定什么是瓶颈。 我只想要一个大概的想法。

另一方面,您甚至可以build议每天有多less页面浏览量(假设类似的5倍峰值负载分布)可以遵循服务器支持:

  • 2 GB RAM
  • 2 GHz的CPU
  • 100 Mbps的上行链路端口(我甚至不知道这是否会专注于我,但许多提供商提到这一点)。

编辑:

我正在提供PHP页面。 他们中的大多数没有或很less的数据库查询(比如说最多5个简单的查询)。 除此之外,还有一些会话variables操作等。数据库查询/查询的平均数量是每页2个,表中不超过几千条logging

你所引用的大部分指标都与预测能力无关 – 而且还有很多你需要的信息缺失。

只要你使用共享的服务器,就很难确切知道你有多lessCPU可用 – 如果你的VPS超出了你的VPS,那么一个专用的machnie可能就是要走的路。

您还没有提及您当前使用的Web服务器/操作系统,也不是您目前是否使用SSL。

我认为有些请求可能会很慢,因为我看到跳出率很高

认为? 你真的需要开始测量这个。 “跳出率”是什么意思?

首先要做的就是开始测量你的网站的行为 – 开始在你的日志中logging%D,如果你正在使用mysql,为慢速查询日志设置一个低阈值。

接下来,确保你的站点configuration良好 – 安装操作码caching,确保你提供了良好的caching指令,启用压缩(对于PHP你需要gzhandler)。

距离需要100MBps的容量还有很长的路要走,但是出于其他原因,在网卡上使用这个速度是有道理的。

开始logging你正在运行的httpd进程的数量,并将其与'free'报告的可用内存(较less的缓冲区和caching)进行比较。 根据使用情况的不同以及使用非常小的数据库,您应该拥有足够的可用内存来容纳80%的静态内容和数据库文件。

没有关于您的特定应用程序的性能特征的详细信息是不可能的。 如果您通过nginx提供静态HTML,那么您当前的VPS应该可以达到每天或更多的一百万页; 如果您有一个应用程序为所服务的每个页面执行复杂的数据库查找,然后对结果运行一个计算量很大的algorithm,那么您将需要一个负载平衡器和一整台服务器来每天获得500,000个页面。

如果您的页面与PHP 5.3+兼容,则强烈build议使用nginx。

你可以在这里find一些比较。 但是,如果您使用的是旧版本的PHP,我build议坚持使用Apache,而不是修补PHP作为服务运行。

你现在的configuration很容易用Nginx来满足你的请求。