【问题标题】:how to test php scalability如何测试php的可扩展性
【发布时间】:2012-12-23 11:11:27
【问题描述】:

我在性能良好的 VPS 上运行 centOS。 我有一个 PHP 文件,它为每个玩这个游戏的用户计算游戏的一些组合。它计算使用 FLASH 构建的游戏的逻辑。

我想测试这个文件,看看同时处理 1000 个用户的响应时间如何 我不知道从哪里开始或寻找什么。

如果有人可以给我一些建议,请告诉我。

我还有一个问题。我如何知道我的应用程序是否可扩展?

【问题讨论】:

  • 使用像 ApacheBench (ab) 这样的工具总是一个很好的起点
  • 为什么在这个时代闪现!!!?
  • @Ben Carey - 因为它的替代方案 HTML5 的安全性为 0,任何人都可以窃取您的源代码。
  • @nevergone 您也可以反编译 flash,您只需将“并非所有设备都支持 flash”添加到可能的问题列表中(从设备/便携性方面考虑您游戏的未来):-\你可以混淆和缩小 JS,这应该阻止只是为了好玩的逆向工程师
  • @nicogawenda ,如果你反编译 flash,你不会像 HTML5 那样获得 100% 可读的代码。 Flash 正在不断发展,并且仍然可以在 90% 的所有使用互联网的 PC 上使用。唯一不好的是移动设备不支持。您可以在 FLASH 中获得比在 HTML5 中更好的 RIA,而且速度更快。并不是所有的浏览器都支持 HTML5。

标签: php performance scalability


【解决方案1】:

你也可以试试https://loadimpact.com/,它也提供了很好的监控工具和使用 Lua 脚本语言定制的用户测试场景,我们最近使用这个站点来测试我们的直播应用程序的可扩展性,获得 1 个月的会员资格相当便宜允许对 3000 名并发用户进行无限制测试,我们对网站进行了调整,在最近的一个节目中可以在一小时内扣留 12000 多名并发用户,现在对此非常有信心。

【讨论】:

  • 如果您想询问我们如何知道只有 3000 个并发用户可用的站点的断点,我们会查看服务器和数据库使用统计数据并使用亚马逊 AWS Elastic Beanstalk 上的微型站点,并增加数量估计 3000 个用户对 300k 的影响(使应用程序在有限的功能和硬件等情况下工作慢 1000 倍)的功率密集型任务,我建议您这样做,您不需要 1000 名真实用户访问您的服务器
【解决方案2】:

我想测试这个文件,看看同时处理 1000 个用户的响应时间如何,我不知道从哪里开始或寻找什么。

雇用曾经去过那里并做过这件事的人。我知道,从表面上看,这可能看起来很昂贵,但与试图攀登流程、工具、需求、报告、分析的垂直壁相比,雇用某人会更便宜。

您对“同时”一词的使用也说明了这一点。人类不是这样运作的。同时行为由时钟滴答和自动化过程控制。自然种群是混乱的,但可能会在一个短暂的窗口内到达,每个种群相互独立运行,但在系统上产生不同的请求负载。

我审核了很多开发人员生成的性能测试。在负载模型设计、实施、步调、数据等方面的审计从来都不是很好......

特别是如果要为 1000 个并发用户付费,那么在进行测试所需的短时间内聘请专家或服务是值得的。

【讨论】:

    【解决方案3】:

    您可以为此使用ab

    要测试最终用户的性能,请不要在服务器上运行它。测试工具将使用与脚本相同的资源,并且 localhost 网络通信不是真实场景。还有一些基于云的压力测试服务(如 http://loadimpact.comhttp://www.neustar.biz/enterprise/web-performance/load-testing-packages ,但它们不是免费的)

    另外,看看整个系统的内存/CPU 消耗,而不仅仅是脚本本身。通常,使用 Nginx 和 FastCGI 应该会在资源使用方面获得相当多的改进。

    可扩展性很大程度上取决于您的脚本在做什么、它消耗什么资源以及如何使用。最后,它可能就像添加另一台服务器和一个负载均衡器一样简单。

    【讨论】:

      【解决方案4】:

      您可以在 xDebug 中启用跟踪,这将为您提供内存使用跟踪。 您可以免费使用诸如 loadimpact 之类的服务在您的服务器上进行负载测试(或使用像 ab 这样的内部测试器,但在现实世界中不太可靠)。 以下是启用跟踪的方法: xdebug.auto_trace=1

      【讨论】:

        【解决方案5】:

        您可以使用的工具很少。

        ApacheBench

        Httperf

        HP LoadRunner

        http://www.opensourcetesting.org/performance.php

        xDebug 内置分析器。将允许您查看所有函数调用、平均和累积调用时间以及总脚本执行时间

        【讨论】:

          猜你喜欢
          • 2013-10-28
          • 1970-01-01
          • 1970-01-01
          • 2023-03-14
          • 1970-01-01
          • 1970-01-01
          • 2011-02-21
          • 1970-01-01
          • 2013-03-27
          相关资源
          最近更新 更多