During the past few years, PHP has grown to be more than just a simple tag-centered scripting language for neophyte Web designers
who want to do a bit of programming. A quick survey of the breadth and depth of the open source projects using the language
shows that people can and will build enterprise-grade applications with the embedded tags. Now Zend Technologies, the company
steering the language, is rolling out more tools to support the enterprise-grade servers that run these more serious applications.

Zend Platform 1.1
Zend Technologies, zend.com
|
Very Good 8.3 |
 |
| criteria |
score |
weight |
| Management |
8 |
20% |
 |
| Monitoring |
9 |
20% |
 |
| Reporting |
8 |
20% |
 |
| Scalability |
8 |
20% |
 |
| Setup |
9 |
10% |
 |
| Value |
8 |
10% |
 |
|
 |
Cost: One CPU per year, $999; two or more CPUs per year, $1,495
Platforms: Server: Linux, Mac OS X, Solaris 6, FreeBSD 4, 5.0-5.2 running Apache 1.3, Apache 2.0, Zeus; client: IE 5.5, Netscape 7, Mozilla
1.7, Firefox
Bottom Line: Zend Platform is a well-designed package that helps manage a PHP installation by flagging and debugging problem pages. It
can also accelerate the server using selective compilation and caching. Flexible alert criteria allow you to detect a wide
range of problems, including the slow execution of a page or function. Deeper diagnostics and more run-time profiling would
be nice additions.
|
 |
About our Reviews and Scoring Methodology
|
|
|
|
The latest offering, Zend Platform, brings sophisticated monitoring to system administrators who want to ensure that all clients
get their data. The tool tracks the performance of all scripts and integrates with Zend's accelerator to offer faster performance
through script compilation and caching. If the server fails to provide the right level of service, the tool can fire up Zend's
development studio for direct debugging.
The Platform begins at a subscription of $995 for one year. Zend continues to distribute the basic PHP toolkit for free as
an open source package that is practically bundled with the omnipresent Apache, a tie-in that encourages people to experiment
with the language. The fees from add-on products such as the Zend Platform support the general development of the language,
a process that is adding more sophisticated object-oriented features and making PHP more and more like JavaServer Pages.
I tested the system by installing it on a Macintosh running several of the common PHP applications such as PHP-Nuke on the
built-in version of PHP. The process couldn't have been simpler. After unpacking the system and running the installer scripts,
the Zend Platform started tracking all pages served by the system. There was no recompilation of the scripts or reintegration.
It just started working, and the information was immediately available through the Web server.
It was a bit harder to get the Platform to communicate with the debugger in the Zend Development Environment, but I was able
to solve it with some help from Zend. The debugger software was well-designed with some nice tools for testing these connections
when specified, but the tools for connecting the Platform with the IDE were not always sufficient.
The pulse of PHP
The first thing a user sees when firing up Zend Platform is a dashboard that lists scripts that are not performing quickly.
The five worst offenders are listed with a graph highlighting the overall response time of the server. If you want to understand
what is going wrong, you can click on one of these scripts and a page opens with all the information that triggers the call.
You can look at any cookies, parameters, or files in the HTTP request that were causing the trouble.
If you want to watch what happens when the server handles a troublesome HTTP request, you can either send it directly to the
server again or pass it to the Zend Development Environment, an IDE with a built-in debugger and profiler sold separately.
Both techniques can pinpoint slow scripts or problems with a Web site.
The Zend Platform covers a wide range of problems, and it includes a good, basic mechanism for programming alerts when trouble
arises. It sends e-mail to an address or posts a report to a URL when it identifies a slow script, an error, or a high load
on a server. Alerts can even be triggered by the slow execution of a particular PHP function, something that allows you to
pinpoint sluggish parts of the system such as databases.
Zend's monitoring is good, but it could be deeper. You can identify problem scripts, but it's not simple to dig through all
the instances that are causing trouble. You can get the cookies and parameters from the latest HTTP request to trigger an
alert, but you can't dig through the cookies and parameters that caused an earlier occurrence. A deeper display with the parameters
that trigger all slow pages would be nice.
It might be even nicer to have more run-time profiling. Although you can re-execute the problematic HTTP request in the development
studio, it's not the same as getting profiling information when the problem occurs. Intermittent problems such as overloaded
databases are usually fine when you return to resimulate the problem. Some of the most sophisticated Java survey tools offer
this feature, albeit at a significantly higher price.
PHP turns pro
Monitoring is only one of the jobs of Zend Platform, a cornucopia sort of tool for the various enhancements that Zend sells.
If you want to optimize the performance of Web pages and track the effect the optimizer has on performance, you can click
through to a page that summarizes the speed gains from compiling or caching a script. My numbers seemed to range between zero
and 50 percent, and the overall gain the system calculated was 24 percent. If necessary, you can turn compiling and caching
off, although I can't think of many practical reasons to do this.
The Platform also includes the Java Bridge, a tool for speeding up the integration of PHP with Java. The system fires up one
JVM and leaves it running so each PHP script won't need to wait for a JVM to start up.
The Zend Platform will certainly be a big leap forward for PHP designers. The serious enterprise developers have always clustered
around Java. As a result, the tools available for Java have always been stronger and more sophisticated. Zend's instrumentation
will give PHP developers a much-needed way to catch up. It offers a good start at supporting a serious enterprise operation
built around PHP.