Quercus is Caucho Technology’s 100% Java implementation of PHP 5 released under the Open Source GPL license. Quercus comes with many PHP modules and extensions like PDF, PDO, MySQL, and JSON. Quercus allows for tight integration of Java services with PHP scripts, so using PHP with JMS or Grails is a quick and painless endeavor.
With Quercus, PHP applications automatically take advantage of Java application server features just as connection pooling and clustered sessions.
Quercus implements PHP 5 and a growing list of PHP extensions including APC, iconv, GD, gettext, JSON, MySQL, Oracle, PDF, and Postgres. Many popular PHP application will run as well as, if not better, than the standard PHP interpreter straight out of the box. The growing list of PHP software certified running on Quercus includes DokuWiki, Drupal, Gallery2, Joomla, Mambo, Mantis, MediaWiki, Phorum, phpBB, phpMyAdmin, PHP-Nuke, WordPress and XOOPS.
Quercus presents a new mixed Java/PHP approach to web applications and services where Java and PHP tightly integrate with each other. PHP applications can choose to use Java libraries and technologies like JMS, EJB, SOA frameworks, Hibernate, and Spring. This revolutionary capability is made possible because 1) PHP code is interpreted/compiled into Java and 2) Quercus and its libraries are written entirely in Java. This architecture allows PHP applications and Java libraries to talk directly with one another at the program level. To facilitate this new Java/PHP architecture, Quercus provides and API and interface to expose Java libraries to PHP.
The Quercus .war file can be run on Java application servers such as Glassfish, i.e. it can be run outside of Resin. This .war file includes the Quercus interpreter and the PHP libraries.
So, to give you an idea of what kind of performance, Caucho’s site claims 4x improvements over standard mod_php with many applications, including Drupal. So, we decided to use some of the machines in our lab to try this out. Seems like a good idea, no? And a drum roll please… Well, I’ll be damned if they weren’t correct. Here are the results:
Geert Bevin recently experimented with clustering Drupal with Terracotta running on Caucho’s Quercus, a Java implementation of PHP.
Javalobby hosted an interesting followup discussion that discussed the merits of PHP on the Java platform using Quercus.
‘Month of PHP bugs’
We’re following the Month of PHP Bugs and analyzing the bugs for quercus at the Caucho Forum. Quercus is immune to many of the PHP bugs because Quercus is implemented in Java and PHP is implemented in C.
Contact People is a mobile application that provides a solution for business caller identification and easy exchange of digital business cards which are transferrable and give more access to business real-time information, events and news updates through mobile business feed.