配置服务器来处理大量请求

配置服务器来处理大量请求

我有一个网站,我们在 neobux.com 上购买了一些广告。我们购买了 1000 次浏览量,希望吸引更多用户访问网站。我们有一个 VPS,内存为 1GB,可运行 1GB Apache。当我们在网站上启动广告时,不到 1 分钟就获得了大约 1000 次浏览量。我们看到其他网站可以处理这种流量,但我们的网站不行。有没有什么解决办法,我们可以看看这个问题,因为这种广告是网站运行所必需的。现在,当我们激活网站时,它加载速度非常慢,最终进入空白屏幕。我们没有静态页面,因为这取决于用户是否宣传我们的网站以获得更多推荐。我们正在运行按点击付费脚本。

有人可以帮忙吗?

答案1

哇 - 我能说什么呢,这些事情并不容易,不是吗?但不要害怕,没有人生来就知道这些事情,所以不要为此感到难过,至少现在还不要。

最终归结为三个主要领域;

  1. 了解您的可能目标受众 - 这是指查看在给定的一天/一周/一个月内您可能看到的最大/平均/最小用户数量。这主要是您的营销人员的任务,但您还需要了解普通用户对您的环境造成的典型负载。例如,您可以推断出您可能会看到在 0900-1700 小时内每分钟 1000 x 100KB 的浏览量下降到该时间之外每分钟 100 次或类似情况。
  2. 设计系统 - 这是实际设计端到端环境以支持这些要求。首先,您需要了解这些普通用户交互的数据流和容量,首先是您的 Web 服务,然后是您的应用程序,然后是您的数据库,然后反过来 - 通常,您最终会以“故事”的形式规划出工作流程,展示每个用户实际发生的情况。一旦您了解了每个用户交互的性质,您就可以创建一个概念验证环境,以确定每个典型用户交互需要多少 CPU、内存、磁盘 IO、磁盘容量和网络 IO。一旦您证明了这些技术要求,您就可以根据预期负载推断负载要求,并开始设计生产环境,并将其扩展到每个资源的正确级别。
  3. 构建、测试和调整环境 - 在这里,您将实际创建要投入生产的各种层/应用程序。将涉及许多不同的技能,从扩展设计到网络、操作系统管理、应用程序创建、存储管理、安全审计、测试以及最终的现场支持。

不过最棒的是,如果您执行这些步骤,您最终将得到一个能够按照要求运行的平台!

答案2

决定服务器可以处理多少流量的主要因素有两个:

  1. 服务器电源-- 显然,服务器越大意味着服务能力越强。VPS 的服务能力可能处于“低”端。
  2. 内容类型-- 您提供的内容对您提供的服务量有重大影响。与复杂且未优化的 PHP/MySQL 应用程序相比,您可以提供数量级更多的静态 1kb 图像。

同样,如果您想要一个“更快”的网站,您可以做两件主要的事情。您可以获得更好的服务器(更大的服务器和/或多个服务器),或者您可以优化您的应用程序(PHP 操作码缓存、优化设置、缓存层等)。前者通常很容易做到但成本高昂,而后者可能更难,但从长远来看会让您走得更远。请注意,设计不佳的应用程序甚至可能导致大型服务器瘫痪。

你现在做什么真的取决于你的情况。在某些情况下,花钱升级到超规格的服务器,然后再考虑适当的应用程序优化,这可能是更好的选择。

答案3

首先要检查服务器是否真正达到了其资源限制,apache 和 mysql 都有默认的同时连接限制设置,您可能需要修改这些设置。

使用 htop(假设您在 Linux 机器上)是一种相当简单的方法,可以获取有关 VPS 上运行的资源使用情况和进程的一些基本信息。

然后,您可以检查是服务器导致了瓶颈而不是配置限制,并增加主机的服务器资源或检查网站以查看是否可以进一步优化它。

相关内容