0

我正在对一个非常复杂的 web 应用程序进行最后的润色,该应用程序将很快进入测试阶段。我的 PHP 编码风格涉及编写大量小脚本,这些脚本通过 require 语句在不同的“容器”脚本中重复使用。在过去,我使用 eAccelerator 来加速我的脚本,结果非常令人印象深刻(我通常得到 x 4 的改进)。但是,当前的应用程序处于不同的联盟,并且可能比我以前所做的任何事情都吸引更多的用户。我正在确定我可以在服务器上做什么,以提供流畅和快速的用户体验。我以前从未使用过 Zend Server(它的要价确实很高),所以我认为最好获得一些反馈,了解它是否可以帮助解决以下任何问题

  • 继续使用我的“使用和重用的 PHP 脚本分数”编码风格和 mySQL 数据库。
  • 提供更好的错误跟踪/错误报告/监控
  • 加速性能
  • 分析以识别我的代码中执行时间最长/可以通过调整等进行的位。

我刚刚下载了 Zend Server 的 Windows 试用版来试用我的本地 WAMP 安装。然而,一天仍然只有 24 小时,所以在我开始之前,知道我是否在这里吠叫错误的树会很有用。任何提示将不胜感激。

4

2 回答 2

1

它可能会有所帮助,但不一定是最佳选择。

关于更好的错误跟踪和错误报告,这在很大程度上取决于您已经拥有的东西。如果您使用机械师很长时间并且习惯了它,通常更改它会导致一些问题或延迟,而且您的机械师可能是一个非常好的机械师。

关于分数,应该没有问题,因为您仍然会有文件使用记录。

关于剖析,这再次取决于您已经拥有的内容。

关于性能,我个人认为使用您已经提到的内容以及良好的编程实践并不会好得多,而且我不是在谈论脚本的微基准测试,而是正确使用循环,取消设置您没有的东西需要,避免循环,避免双重检查文件或外部资源等。

如果您在本地测试中发现了很大的改进,那么您可能决定使用它或花时间分析报告并确定是否可以通过更好的代码、使用缓存、更好的 .htaccess 或使用标头来实现改进或使用 Zend。

于 2012-10-20T07:44:28.913 回答
1

在我看来,它绝对值得你一试。它具有一些独特的功能,您将无法通过其他配置/产品轻松获得这些功能,这些功能在未来可能会有所帮助。

为了解决您的观点:

  • 继续使用我的“使用和重用的 PHP 脚本分数”编码风格和 mySQL 数据库。

    您重复使用的包含文件肯定不会有问题。当我谈到性能时,会有更多细节。

  • 提供更好的错误跟踪/错误报告/监控

    是的。代码跟踪功能非常适合跟踪错误。通过管理界面,您可以在一个地方清楚地看到来自所有服务器的 PHP 错误消息,而无需挖掘日志文件。

  • 加速性能

    如果您启用字节码缓存,您将看到与 eAccelerator 一样的改进性能。字节码缓存将使加载您经常需要的脚本比让 PHP 在每个请求上解析它们要快得多。此外,您可以利用缓存 API 来缓存数据库查询的结果(本机无需设置诸如 Memcached 或文件缓存之类的东西)。

  • 分析以识别我的代码中执行时间最长/可以通过调整等进行的位。

    代码跟踪为您提供了其中一些在生产环境中特别有用的信息。但是您总是可以使用 XDebug 或 Zend Debugger 之类的东西来进行更高级的代码分析。

另一个不错的功能是会话集群。听起来不久之后您就需要运行多个 Web 服务器。当您确实做到这一点时,确保您的 PHP 会话对所有服务器都可用,并且您不必设置数据库或 memcached 会话处理程序,您可以使用 Zend Server 会话管理器来确保如果一个服务器出现故障,在该服务器上创建的任何会话数据都将可供其他服务器使用。

这并不是说您无法使用其他免费产品获得所有这些东西,但根据您的预算和时间表,它可以简化许多技术考虑并由一个产品管理,而不必支持多个产品来确保您的运行地点。如果这对您有价值,那么它可能值得考虑。

此外,您可以为支持支付额外费用。我没有 Zend 电话支持方面的经验,因此我无法对此发表评论,但您可以选择让某人提供帮助。

于 2012-10-20T08:11:55.590 回答