Zend Upgrades Commercial Add-Ons for Its PHP Engine
February 12, 2007 Timothy Prickett Morgan
PHP creator and commercializer Zend Technologies will today announce the third release of its Zend Platform PHP engine for enterprise-grade PHP applications. The Zend Platform software takes the open source PHP engine, which is distributed with open source Linux operating systems under a GPL license, and adds features to it for content caching, load balancing, high availability clustering, and monitoring and management. The basic PHP engine is free, but Zend Platform costs money, and the price varies depending on the features companies want to use.
Zend has a somewhat confusing way of naming its products, which bears some explanation before getting into the details on the new Zend Platform 3.0 that will be announced today.
The PHP engine is not called Zend Basic or anything like that. It is just called PHP 5 in the latest open source distribution and is called Zend Engine when you buy a support package for it from Zend. Some operating system distributors that embed PHP offer tech support for this engine as part of their own support, so you don’t necessarily have to pay for Zend Engine. PHP 5.2 release is the most current release of the engine.
Zend Studio is the development tool to create PHP applications, and the company just launched the 5.5 release of this tool in December 2006. Zend Studio 5.5 is used to create PHP 5.2 applications, and has a lot of tweaks to make developers’ jobs easier. It runs on Windows, Linux, and Mac OS X workstations.
Zend Core is a set of commercial products that add extensions to the PHP engine for particular operating systems, file systems, or database management systems. For instance, Zend Core for i5/OS has hooks in it so the PHP engine can talk to IBM‘s DB2/400 database and the data queues and file systems (there are more than one) inside the i5/OS operating system for the System i5 platform. Zend Core for Oracle hooks into the Oracle 9i or 10g databases running on Windows, Linux, Solaris or AIX machines. Zend Core for IBM runs on AIX, Windows, or Linux platforms, and can be used to integrate PHP applications with DB2, Cloudscape, or Informix databases. All Zend Core variants include Zend Studio.
Zend Core 2.0, the future version of the commercial PHP engine, is in beta testing now and will support Microsoft‘s Vista and IIS combination as well as Apple Computer‘s Mac OS X operating system on both PowerPC and Intel X64 platforms. It will also run on Novell SUSE Linux Enterprise Server 9 and Red Hat Enterprise Linux 4, and Windows 2000 and 2003 server variants.
Zend Platform is not a superset of any of the Zend Core packages, but rather a different superset of the basic PHP 5 engine that works in conjunction with Zend Platform. Like Zend Core, Zend Platform is not a free product. While Zend Core is aimed at fairly simple PHP setups–perhaps supporting a single Web site on a single server–Zend Platform is for more complex PHP applications that need to hook into Java applications running on the network and which also need to have features that make PHP applications more resilient, such as caching, load balancing, and high availability clustering.
These features were all available in Zend Platform 2.0, explains Andi Gutman, one of the founders of the company (he is the “nd” in Zend), but with Zend Platform 3.0, the PHP community has given back a lot of advice to Zend’s programmers so they can make a better product for supporting the kind of complex PHP systems that are being built these days.
Zend Platform 3.0 comes in three flavors, the latter of two which are bundled together with a single price. (Yes, Gutman concedes, this is confusing and he says that it is likely that the software will eventually be broken into three pieces with three prices.) The first part of Zend Platform 3.0 is called Performance Server. This includes dynamic content caching, which means PHP pages are generated once and stored in cache, thereby speeding up a Web site, sometimes by a factor of 150; the software also has number of other tricks that Zend added to speed up PHP applications, by as much as a factor of three, according to Gutman. The Performance Server also has a feature called PHP Intelligence, which does a core dump on a system when something goes wrong in a PHP application or infrastructure setup and then allows administrators to first fix the problem–meaning, get the PHP applications running again–and then recreate the precise problem that caused a crash or other error so the code can be fixed. (This feature integrates with Zend Studio to do this debugging.)
The next step up in the Zend Platform 3.0 software is called Integration Server. The main feature in this software is a PHP-to-Java bridge that allows PHP applications to call Java applications or invoke J2EE application services running adjacent to the PHP engine on a server. Integration Server also now hooks into SNMP system management protocols, so monitoring and management tools like OpenView, Tivoli, and Unicenter can bring PHP engines and applications under some sort of centralized control. The new version also has support for the Eclipse project’s BIRT reporting system, which plugs into Java applications to generate reports.
Mainframe, OS/400-i5/OS, and Unix systems have very sophisticated reporting add-ons as well as some inherent capabilities, but Gutman says that many shops using PHP applications have up to this point been forced to cut and paste between PHP applications and report generators to do the kinds of electronic and paper reporting that managers love to do. With BIRT integration, PHP applications can now pump information through Java services into reporting tools that in turn can kick out HTML or PDF reports on the fly. (BIRT was contributed to the Eclipse community by Actuate, a business intelligence tool maker.)
Finally, the top-end component of Zend Platform 3.0 is called Enterprise Server, and it provides PHP session clustering and high availability failover clustering for PHP engines. And you do not have to cluster at the operating system level to accomplish this–Enterprise Server takes care of that. With Zend Platform 3.0, the high availability clustering was added because of customer requests, says Gutman, and this requires physical servers to be paired up. Session clustering allows multiple machines to be clustered to deliver scalability for PHP applications–more iron to process applications–but right now, Enterprise Server cannot cluster for both high availability and performance at the same time (like an Oracle 9i or 10g RAC setup can).
Enterprise Server includes a job queue–PHP shops had apparently built their own, and their code donations formed the foundation of this feature. Job queues were standard features in batch-oriented operating systems and were added to Unix platforms; they allow offline processing of transactions, which run a lot faster than interactive sessions processing the same data and because they are offloaded, the interactive PHP scripts that need to consume CPU resources now can get those resources. Enterprise Server also has a feature called Download Server, which boosts the speed of file downloads on sites powered by PHP. Finally, new features in Enterprise Server allow configuration changes in one PHP engine to be cascades automatically across a cluster of machines and the PHP configuration itself can be done from within a GUI instead of mucking about in configuration files in text editors.
Zend Platform 3.0 will be generally available on Linux operating systems running on 32-bit X86 and 64-bit X64 servers starting today, and will gradually be rolled out in beta and then production on Windows, Solaris and FreeBSD Unix, and i5/OS. Gutman says that Windows support for Zend Platform 3.0 will beta first, with general availability of the software in March, followed by a beta for Solaris, FreeBSD, and i5/OS in March and availability in April.
On a two-socket X86 or X64 server running Linux, Zend Platform 3.0 Performance Server costs $1,495. The bundled Zend Platform 3.0 Integration Server and Enterprise Server costs $4,995 on the X86-X64 Linux boxes. Prices have not yet been set for Windows, Solaris, FreeBSD, or i5/OS servers.
Gutman says that with the Platform 3.0 announcement, the first time PHP has been supported in an official manner on the Windows platform, and this is a direct result of the partnership deal that Microsoft inked with Zend last fall. “Windows support is a very big deal for us,” says Gutman, “since we didn’t support Zend Platform in a production environment before.”
Given that small and medium businesses predominantly use Windows, and not Linux, Windows support should help drive Zend’s revenues, given the popularity of PHP as an alternative to Java and C# for certain kinds of application development. Microsoft and Zend are working to make sure that the Zend stack works on the future “Longhorn” Windows Server variant, too–not just Windows Server 2003. Don’t hold your breath for Windows 2000 support.