While we typically release Zend Server at least twice a year, you may have noticed that we didn’t release a new version last fall. Instead we targeted the next Zend Server release for the beginning of 2018. It’s because we wanted to take the time to offer a significantly better product, with improved performance, quality, and user experience. We listened to you, our customers, and deepened the existing feature set while selectively adding new functionality – many of which were based on your feedback.
What does this mean? What can you expect?
If you’re familiar with Zend Server and its features, you’ll notice the enhancements very quickly.
Get things running faster
It’s true that the major leap was moving to PHP 7, but we continue to see PHP getting faster with each minor version. Check out these benchmarks:
Of course, your mileage may vary, but in many cases, you’ll see better performance migrating to PHP 7.2. If you’re still on PHP 5, that’s an understatement – expect to be blown away as you migrate to this newest installment of PHP goodness.
PHP FPM (FastCGI Process Manager)
Historically, the natural partner for PHP on Linux has always been Apache, however with PHP loading right into it via mod_php, in recent years, this monopoly has slowly eroded. We’ve been offering NGINX support in Zend Server for quite some time, and with this new version – we’re adding support for FPM under Apache (in addition to the traditional mod_php support).
The main claim to fame for FPM is that it breaks the 1:1 ratio between web server processes and PHP processes (with mod_php, every Apache process also has a copy of PHP loaded into it), allowing for significantly reduced memory consumption and typically, better performance. If you have a busy site, or your server is otherwise low on resources – exploring the possibility of migrating to FPM is recommended.
Zend Server Pulse
When we talk about performance in Zend Server, we usually talk about several layers of caching that are available. The first and the most fundamental one is OPCache (bytecode caching), which is built-in and works out-of-the-box with every PHP app and requires no code changes or special settings. Page Cache is available for caching pseudo-dynamic pages – pages that while not completely static, change relatively infrequently (e.g. every hour, every 5 minutes or even every minute). Finally, Zend Data Cache is used to cache different types of data (often query results in the form of arrays, web service responses as strings, etc.), as well as rendered chunks of partial output that similarly, while not completely static, don’t change very often, and can be saved for fast reuse in shared memory or disk.
While Zend Server has been offering these popular capabilities for quite some time, it hasn’t been providing users with feedback as to how well they’re doing, how effective their caching strategy is, and what kind of impact it’s making on their application performance.
Following the footsteps of Zend Server 9.1 when we introduced Job Queue Pulse, we’re introducing Pulse for Page Cache and Data Cache. Pulse provides analytical information, insights, and reports on the cache system, so users can understand how the cache affects their application performance. You’ll be able to see how effective your caching is and adjust the rules to make performance improvements.
Manage your apps
Deployment functionality is not a new concept in Zend Server. It’s widely used by our customers and is an essential step towards automation and continuous delivery. You can deploy your applications, update new versions, or rollback, allowing for consistency across development, staging, or production, and in a cluster.
During an application update, the user can select nodes of the cluster to deploy the new version to. The rest of the nodes retain the stable (old) version. It’s a great way for testing and getting feedback on new application versions in production or for A/B testing purposes.
Multi Virtual Hosts per app
Save on an application’s deployment and maintenance time by using an enhanced Virtual Hosts system that supports numerous Virtual Hosts that are attached to the same app codebase. The most popular use case is supporting secured and non-secured virtual hosts for the same application.
Microsoft IIS deployment
Using IIS? We have brought the full deployment capabilities of Zend Server to this platform and now support IIS multi app-pools. Zend Server also now fully supports Windows Server 2016.
Execute offline scripts
To execute offline scripts, many customers use Job Queue (JQ), which is good for off-lining code and for running scheduled jobs.
So, what’s new? Until now you could only run jobs using HTTP requests which are limited in execution time due to web servers’ built-in timeout. We’ve had customers requesting to use JQ with long lasting, heavy jobs for some time now. In this version, Job Queue can manage and execute scripts using CLI. CLI jobs are not limited in time and this allows running long-executing scripts.
Moreover, while creating CLI jobs, users are not bound to PHP solely, but can run any script in any language! Cool!
Bottom line – You need early access to Zend Server 2018
There are many other things we improved, something in just about every feature. I just covered the most important ones on this post.
If your’re curious, and excited to test drive these new features, join the Early Access program now.
Those who get back to us with serious feedback will be rewarded.