Apache 并发页面请求比较

Apache 并发页面请求比较,apache,amazon-web-services,memcached,web-deployment,mysql-management,Apache,Amazon Web Services,Memcached,Web Deployment,Mysql Management,我一直希望找出不同的服务器设置在理论上等同于并发页面请求,而答案似乎总是沉浸在巫术和巫术中。以下设置的最大并发页面请求的近似值是多少 apache+php+mysql(1台服务器) apache+php+mysql+缓存(如memcached或类似服务器(仍然是一台服务器)) apache+php+mysql+缓存+专用数据库服务器(2台服务器) apache+php+mysql+缓存+专用数据库+负载平衡(多Web服务器/单数据库服务器) apache+php+mysql+缓存+专用数据库+负

我一直希望找出不同的服务器设置在理论上等同于并发页面请求,而答案似乎总是沉浸在巫术和巫术中。以下设置的最大并发页面请求的近似值是多少

apache+php+mysql(1台服务器)

apache+php+mysql+缓存(如memcached或类似服务器(仍然是一台服务器))

apache+php+mysql+缓存+专用数据库服务器(2台服务器)

apache+php+mysql+缓存+专用数据库+负载平衡(多Web服务器/单数据库服务器)

apache+php+mysql+缓存+专用数据库+负载平衡(多Web服务器/多数据库服务器)

+分布式(amazon cloud elastic)--我知道这是“你能负担得起的”,但如果知道什么时候开始,那就太好了


我欣赏任何建设性的批评,我只是想弄清楚什么时候该从一个实现转移到下一个实现,因为它们都有自己的实现专长,无论是编程方面还是安装方面

这些设置不会给出一个答案,然后您可以相互比较。答案会因您列出的因素而有所不同

即使他们给出了一个答案,那也只是几十个指标中的一个。什么使这成为最重要的指标

更糟糕的是,每一种选择都不是免费的。每一项都有工程工作和维护开销。如果不了解您的组织、应用程序和成本/收入结构,就无法对其进行分析

像AWS这样的选项不仅涉及开发工作,而且可能会“锁定”解决方案,所以您也需要意识到这一点

我知道这个回答并不完整,但我要指出的是,这个问题涉及一个大而复杂的领域,不能简化为一个指标

我怀疑你是从一个错误的方向来的。不要去寻找技术,然后找出如何使用它们。相反,你应该对你的应用程序进行评测(测量、测量、测量),找出你遇到的实际问题,然后解决这个问题,并且只解决这个问题

如果您了解问题并了解技术选项,那么您应该有一个答案


如果您已经这样做了,并且问题是并发页面请求,那么我提前道歉,但我怀疑没有。

在您的问题中,您谈到了缓存,这可能是web体系结构r.e性能和容量中最重要的因素之一

Memcache很有用,但实际上,在此之前,您应该确保服务器响应上有正确的HTTP缓存指令。这有两件事;它减少了请求数量并加快了服务器响应时间(如果您正确配置了Apache)。这也可以通过使用类似Varnish和CDN的HTTP加速器来改进

另一个要考虑的因素是你的系统是否是无状态的。所谓无状态,通常意味着它不在服务器上存储会话并在每个请求中引用它们。一个好的系统架构尽可能少地依赖于状态。状态越少,系统的水平可伸缩性就越强。大多数人在面对个性化问题时会引入状态,即为不同的用户提供不同的内容。在这种情况下,您应该首先研究使用HTML5会话存储(即在客户端上以javascript存储完整的用户数据,显然是通过https),或者如果数据集较小,则使用安全的javascript cookie。这样,您仍然可以提供缓存资源,然后在客户端上使用javascript进行个性化设置


最后,堆栈包括数据库层,这是性能和容量的另一个潜在瓶颈。如果您只是从系统中读取数据,那么水平缩放应该非常容易。如果存在读写操作,通常最好将读写数据集分离到一个单独的数据库中,并将只读数据集放在另一个数据库中。然后,您可以使用更相关的方法进行扩展。

我清楚地认识到,这些备选方案中的每一个都不是免费的,这使得向上移动的决定更加困难,但实际上,我正试图根据(而不仅仅是)估计的负载来猜测(用拇指向上估计)最初要实现的级别。这并不容易,因为产品仍在开发中,并且没有测试数据,这就是为什么这是我试图编译以帮助我做出决定的众多指标之一,而我在任何地方都找不到一个很好的“猜测范围”答案,所以我想知道社区是否能提供帮助。不过,我非常感谢您的输入。我猜实际上我只是在寻找“apache+mysql+基本设置可能有50-100个并发页面请求”,如果找不到答案,我可能会尝试自己进行基准测试,以便于比较(虽然我知道有很多变量,但我会尽量减少它们,但是,嘿,我从来没有见过一个我无法区分的基准,所以我认为我的基准不会有任何不同)谢谢,我真的很感谢你的意见。