Zend Updates PHP Server Stack for IBM i
January 10, 2012 Alex Woodie
Zend Technologies has launched a major update to Zend Server for IBM i, its PHP server stack for the IBM i platform. Version 5.6 marks the general availability of the new XML Toolkit, which provides a new way for integrating RPG logic into PHP apps, and a new application deployment mechanism. DBi, the drop-in replacement for MySQL on the platform that was slated for release about this time, is not yet ready.
In the absence of DBi, the new XML Toolkit is the headliner with Zend Server for IBM i version 5.6. Zend has been working with IBM for well over a year to build the toolkit, which provides a way for PHP programs to interact with native IBM i services, applications, and data, including making RPG and COBOL program calls, accessing DB2/400 and data queues, utilizing native system APIs, and accessing spool files.
Zend says there are several ways that new XML Toolkit improves upon Zend Server’s old IBM i integration program, which was developed by AURA Equipments (AURA continues to sell that product, called Easycom).
For starters, Zend says, the new toolkit is open source, which provides greater transparency into how the software works and gives developers the option of digging deep into the innards and modifying its function if they choose. Zend also says the new toolkit will require less coding to write program calls, performs faster, and offers more functionality than the old toolkit.
Zend’s senior director of product management Kent Mitchell says the new toolkit has the capability to call more system functions than the AURA toolkit. The development project grew during the beta test and collaboration with IBM Rochester, he says. “As we got feedback, some of the people said, ‘Here’s something we could never call with old toolkit. Can you call that?’ In essence, we used it as an opportunity to fix a number of longstanding issues that people had with the AURA toolkit, and I think all in all, we’ve been successful.”
(The folks at AURA Equipments and its U.S. distributor, Shield Advanced Solutions, don’t necessarily agree with some of the things that Zend says about the new XML toolkit. The companies are planning a major push to grab more customers, which you can read about in the next issue of this newsletter, which is now published every other week.)
IBM i shops that use the old AURA toolkit may be interested in the new “compatibility wrapper” in Zend Server for IBM i 5.6. As Mitchell explains, the wrapper is “In essence a piece of PHP code that wrappers the new interface with new APIs that are compatible with the previous toolkit, so that most applications can simply just run without modifications.”
The compatibility wrapper runs on multiple platforms, giving IBM i shops the option to test their IBM i-to-PHP integration routines on their development PC, for example, before deploying it on the big box. The wrapper is currently a beta product.
While Zend is no longer shipping the old AURA toolkit, Zend Server for IBM i customers can continue to use it indefinitely, and Zend will continue to support it, Mitchell says. “We shipped it, so we’ll support our customers with questions, and if they have a problem, we’ll find them a workaround.” If their problem can only be solved by getting an updated version of the AURA toolkit, Zend will encourage the customer to get support from AURA, he says.
Zend Server for IBM i customers can run the new XML Toolkit and the old AURA toolkit side by side, Mitchell says. This will make it easier for organizations to migrate to the new toolkit.
The other major new feature in Zend Server for IBM i version 5.6 is a new application packaging and deployment mechanism. This function will give IBM i PHP developers “a reliable way of deploying applications and take the guesswork and errors out of different deployment processes that people were [previously] utilizing,” Mitchell says.
“Think of it as being similar to WAR files or JAR files for Java, where you can package it up along with the deployment information and make sure it’s done reliably,” he says. “In conjunction with that process, we have the ability to roll back a deployment. So if somebody deploys something and make a mistake and realizes they don’t really like that particular version, they can rapidly roll back to the previous version and get back to exactly the state they were in.”
The new packaging and deployment functions have been available in the Linux version of Zend Server for months, and now the IBM i version is at parity in this department. “Bringing this deployment-level functionality to the IBM i community is, I think, something they’ll look forward to, and gives them a little bit more standardization on how applications get out there,” Mitchell says. “It’s been pretty well received in the Linux space, and we think it’s going to be well received over here [in the IBM i community] as well.”
Zend has also delivered new APIs that can further automate the deployment processes, such as by automatically delivering the new PHP code to a test server or a separate staging server. These features can be useful in agile programming environments, Mitchell says.
While the IBM i version of Zend Server typically trails the Linux version by several months, version 5.6 actually includes some new features that have not yet been released on Linux. The new features are a set of APIs that improve the way that Zend Server communicates with systems management tools. “In this case, the IBM i release is actually going to leapfrog the Linux release,” Mitchell says. “IBM’s out in front this time a little bit.”
About 95 percent of the code in the IBM i and Linux versions are identical, Mitchell says. IBM i-specific functionality, such as the XML Toolkit or the DBi database, is handled by Zend developers with expertise on the IBM i platform.
The DBi database was delayed to allow for additional testing, Mitchell says. This release of DBi is based on the last version of MySQL that supported IBM i before Oracle dropped MySQL support for IBM i in late 2010, and as such won’t require a beta. (The next release of DBi will require more work.) But just the same, owing to the critical nature of a database management system and all of the other products that rely on it, Zend decided to err on the side of caution and keep the product in testing for a little bit longer. DBi may be released later this month, Mitchell says.