前几天我正在调查Zend Server,我想知道为什么要使用它?好吧,他们说这些都经过测试,关键任务和企业就绪等等。但对我而言,这只是营销部门的讨论。
是否有人在使用此产品,如果有,您可以分享您的使用经验,也许您也可以详细说明为什么您选择此产品的原因。
您是否发现使用Zend服务器有任何实际好处?
答案 0 :(得分:6)
我一直在使用Zend平台(我知道你在询问Zend Server,我已经到了那里),并且非常热衷于使用Zend Server提供的错误报告工具。
每当发生错误或抛出异常时,Zend Server都会尽可能多地存储有关它的信息(例如,正在使用哪些请求参数,发生错误的位置,时间,错误消息,堆栈跟踪等) 。 还报告了慢速脚本执行。
我真的更喜欢在客户上面写这样的错误消息,例如:“该网站无效。请修复它。”
将Zend Server与Zend Studio结合使用时,Zend Debugger已经预装好了(但你也可以自己安装)。
它还带有一个php-java-bridge(你的java类可以在PHP中使用),但我不需要这个。
如果您已经在Web应用程序中使用了基于php的错误报告解决方案,或者对此没有用处,也没有使用java桥接器,我会说如果您使用Zend Server它并没有真正有用你自己的apache安装(只要你知道如何正确配置它)。
至少这是我的观点/经验。
我一直在使用免费的Zend平台开发人员版。如果我不得不为Zend Platform / Server付费,我认为我不会使用它。但这真的取决于项目。
答案 1 :(得分:4)
Zend Server比拥有经过测试和支持的堆栈要多得多。 Andre触及了Zend Server中的一个功能,即监控。监视监视您的PHP脚本执行是否存在某些条件,如果传递了某个阈值,则会记录该请求的上下文以供您稍后检查。当我与有应用程序问题的客户在现场工作时,我要做的第一件事就是安装Zend Server并开启监控。在几分钟内,我通常至少有一个很好的理论来解决他们的问题。
在Zend Server 5中,由于引入了代码跟踪功能,该功能在请求过程中对几乎所有单独的功能/方法调用进行了运行时检测,因而得到了更高的功能。它有点像在运行时期间完成的调试和分析的组合。在许多情况下,可以在不实际复制问题的情况下诊断生产环境中的问题。
您还可以使用其他一些功能。作业队列对我来说是一个很大的问题,我使用得非常广泛。我有一个如何在Do you queue? Introduction to the Zend Server Job Queue
使用它的示例还有两种不同的缓存功能,PHP-Java桥(Andre也提到过)和Optimizer +,它是最快的操作码加速器之一。
答案 2 :(得分:0)
代码跟踪是Zend Sever提供的最佳工具
根本原因分析是开发人员的时间安排
当您知道导致问题的原因时,解决问题很容易。但是,在测试期间找到问题的根本原因通常具有挑战性,并且当应用程序在生产中运行时非常困难。尝试在开发实验室中重现完全相同的环境,应用程序状态和负载既耗时又容易出错,并且需要开发人员远离他们最重要的任务 - 编写代码。 Zend Server 5通过特征代码跟踪将根本原因分析提升到一个全新的水平。
适用于PHP应用程序的飞行记录器
什么是代码跟踪?
想想一个黑匣子飞行记录器。当飞机出现问题时,你可能不想“重现”这个问题。这就是为什么飞行记录仪会捕获飞行分析员可能需要的全部数据,以便了解问题发生的原因。
Zend Server Code Tracing就像是PHP的飞行记录器。
Zend Server不是花时间尝试设置环境并重现导致失败的所有步骤,而是实时捕获应用程序的全部执行 - 无论是在生产中还是在测试实验室中 - 所以你可以快速找到根本原因。
Zend服务器代码跟踪削减根本原因分析时间
当检测到问题时,Zend Server代码跟踪自动激活,或者由用户手动激活,例如,在优化项目期间。
Zend Server代码跟踪记录的数据包括:
Zend Server Web控制台中显示的跟踪使您能够查看 - 就像DVD一样 - 应用程序的执行历史记录,并跟踪单个有问题的请求的脚步,以快速查明根本原因。
答案 3 :(得分:0)
我使用旧软件运行在大型IBM服务器(IBMi系列)上运行的PHP应用程序,这些软件使用COBOL运行了20年,30年。所以基本上Zend Server是我所知道的唯一适用于IBMi的PHP平台,或者至少和它一样强大。这些系统是关键任务。基本上大多数保险公司,银行,股票,甚至学区都在这些类型的系统上运行。既然你可以运行像Zend Server这样的东西,你可以做一些事情,比如构建一个以现代方式公开那些古老系统的REST API,并允许面向服务的体系结构。这就是我一直在努力的事情以及利用PHP CLI和Zend作业队列将事件推送到第三方的事件驱动系统。在这种情况下,我们将数据从我们的终端同步到供应商的终端。
IBMi上的Zend Server设置了一个用于静态资源(CSS,图像等)的nginx前端,并将FastCGI进程用于动态PHP,因此它是一个非常强大的设置。它无疑为现代化开辟了旧系统。
答案 4 :(得分:0)
我发现使用Zend Server来缓解PHP软件版本的管理以及我所有服务器上的所有各种扩展,这是它的最大优势。
此外,能够通过用户输入和环境变量发现问题的根源到特定的PHP函数比通过PHP错误日志特别是在高流量服务器上拖拽更有帮助。
如果有一个开源替代品,我很想知道它!我不太高兴Zend停止免费版本。