|
|
resin® Quercus Benefits
Performance
Quercus is a high performance implementation of PHP and meets or exceeds the
performance of the C PHP implementation with common PHP applications. The
Quercus compiled code provides significant performance increases over the
traditional C based implementation of PHP. Benchmarking has shown that Quercus
is 4 to 6x faster than mod_php, 10% faster than eaccelerator. When used in
conjunction with Resin, static files are served faster than Apache.
Scalability
Quercus alleviates many of the scalability issues faced by traditional
deployments of PHP applications. The thread safe libraries provide for the
possibility of servicing requests without the overhead of requiring many
processes. The single process provides the ability for effective database
connection pooling, even amongst separate requests, greatly reducing database
load and the cost of connection establishment. With the ability to provide
services directly with Java libraries, custom code and proprietary
functionality developed in Java is available directly to the PHP application
and does not require difficult to scale solutions such as web service
client/server architecture.
Security
Many of the security concerns of traditional PHP deployment are addressed by
Quercus. As a Java application, Quercus is not vulnerable to many of the
security dangers of the traditional C based PHP interpreter. As a clean room
implementation of the PHP language and libraries, Quercus provides a
comprehensive single code base and benefits from tighter quality assurance.
Integration
Quercus and Quercus' PHP libraries are written in Java, thereby taking the
advantages of Java applications and infusing them into PHP. Quercus presents a
new mixed Java/ PHP approach to web applications and services where Java and
PHP are tightly integrated with each other. This architecture allows PHP
applications and Java libraries to exist within the same process. To facilitate
this new Java/PHP architecture, Quercus provides an API and interface to expose
Java libraries to PHP. PHP applications can choose to use Java libraries and
technologies like JMS, JPA, EJB, SOA frameworks, Hibernate, and Spring. PHP
applications can also directly consume proprietary services and functionality
developed in Java. Java applications can choose PHP as a view technology,
exposing existing code including JavaEE and Spring based libraries to PHP
developers and designers.
|
resin® Quercus Features
Compiled to Java bytecode
Quercus compiles PHP code to Java byte code. Compilation is performed in the
background, allowing the rapid execution of code in interpreted mode during
development and providing high performance of compiled code in production -
automatically.
Database connection pooling
A common problem with traditional PHP is the inability for the servers to pool
connections to the database. Without database connection pooling, sites reach
a point where they are no longer able to increase capacity by adding more
servers because the limit of establishing network connections has been reached.
Quercus automatically pools database connections, existing applications
automatically gain the benefits of connection pooling, customization of pooling
parameters is also available.
No external dependencies
Quercus has no external dependencies and implements all of the extensive
functionality available in the PHP library. Applications written for or tested
with Quercus are developed in a homogeneous environment, deployment on other
servers are guaranteed the same environment.
Integration with Java libraries
Quercus enables PHP based applications to take advantage of the many enterprise
grade features of JavaEE and other third-party libraries. Quercus includes
functions for retrieving beans in a Spring environment, a Resin environment, or
through the use of JNDI.
Thread safety
Quercus has thread safety and executes each script in it's own dedicated
thread. Because Quercus is threaded and not process based, it is now possible
for PHP applications to take advantage of the benefits of shared resources,
including caching and efficient storage of distributed sessions.
Use any Java servlet container
The interpreted mode of Quercus runs in any Java container. The open source
GPL Quercus application brings the ability to use PHP in any web application,
or via the standard mechanism provided by JSR 223.
More information
|
Copyright (c) 1998-2008 Caucho Technology, Inc. All rights reserved. resin® and
quercus®
are registered trademarks,
and Ambertm is a trademark of Caucho Technology, Inc.
|