Quercus (software)
   HOME

TheInfoList



OR:

Resin is a web server and
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mos ...
application server from Caucho Technology. In addition to Resin (
GPL The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general u ...
), Resin Pro is available for enterprise and production environments with a license. Resin supports the
Java EE Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web ser ...
standard as well as a mod_php/PHP like engine called
Quercus An oak is a tree or shrub in the genus ''Quercus'' (; Latin "oak tree") of the beech family, Fagaceae. There are approximately 500 extant species of oaks. The common name "oak" also appears in the names of species in related genera, notably ...
. While Resin (
GPL The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general u ...
) is free for use in production, Resin Pro includes optimizations such as: *built-in caching *public/private/or hybrid clustering *advanced administration health system *HTTP session replication *distributed cache replication *auto-recovery & diagnostic reports Although a Java-based server, key pieces of Resin's core networking are written in highly optimized C. Caucho states Java is the layer that allows Resin to be "full featured" while C provides the speed. Resin, which was released in 1999, predates Apache Tomcat, and is one of the most mature application servers and web servers.


Product features

Resin Pro has been engineered to include: * Dynamic Clustering- Locking was replaced with non-locking atomic operations, cleared contention bottlenecks, improved the async/epoll performance, and reduced thread overhead to handle 100,000 requests per second. * Cloud Support- Elastic cluster members can be added or removed using a single command. Cluster topology, load balancing, caching, messaging and management automatically adapt to dynamic servers. * Compiled PHP on the JVM- Improves performance, scalability and security of PHP applications by allowing PHP code to directly call Java Objects. * Security though Open SSL integration- A comprehensive security framework for application authentication, authorization and transport level SSL based security. * Smart Software Load balancer- Application load is shared among resources automatically to balance them. * Proxy cache- Faster application performance is possible with Java caching by saving the results of long calculations and reducing database load and application response time. Scalability * Elastic Clustering / Cloud support **3rd generation clustering optimized for Virtualization 2.0, EC2 and OpenStack deployments * Session Replication * Load balancing * Distributed Cache **
Memcached Memcached (pronounced variously ''mem-cash-dee'' or ''mem-cashed'') is a general-purpose distributed memory-caching system. It is often used to speed up dynamic database-driven websites by caching data and objects in RAM to reduce the number of ...
wire protocol for
Couchbase Server Couchbase Server, originally known as Membase, is an open-source, distributed ( shared-nothing architecture) multi-model NoSQL document-oriented database software package optimized for interactive applications. These applications may serve many ...
like caching Development * Class compilation * JIT Profiling and heap analysis * No required *
JUnit JUnit is a unit testing framework for the Java programming language. JUnit has been important in the development of test-driven development, and is one of a family of unit testing frameworks which is collectively known as xUnit that originated ...
support * Web Admin * DevOps support via CLI and REST control of Resin * Apache
Ant Ants are eusocial insects of the family Formicidae and, along with the related wasps and bees, belong to the order Hymenoptera. Ants evolved from vespoid wasp ancestors in the Cretaceous period. More than 13,800 of an estimated total of ...
/
Maven MAVEN is an American spacecraft orbiting Mars to study the loss of its atmospheric gases to space, providing insight into the history of the planet's climate and water. The spacecraft name is an acronym for "Mars Atmosphere and Volatile Evolu ...
/ Ivy integration * IDE integration * Flexible project management * Logging Production Ready * Reliability * Server Monitoring * Deployment / Cloud deployment * Versioned deployment * Merge paths * Troubleshooting aids * Server health reports, baselining and post mortem reporting * Throttling App Server * Java EE Web Profile certified, * Java CDI ** standard Java dependency injection similar to Guice and Spring, part of Java EE * Transaction support Web Server * Static files/ JSP/
Servlet A Jakarta Servlet (formerly Java Servlet) is a Java software component that extends the capabilities of a server. Although servlets can respond to many types of requests, they most commonly implement web containers for hosting web application ...
/ JSF * Extensible access logging * URL rewriting * Proxy caching (similar to Squid) * Gzip compression * * Virtual Hosts *
Comet A comet is an icy, small Solar System body that, when passing close to the Sun, warms and begins to release gases, a process that is called outgassing. This produces a visible atmosphere or coma, and sometimes also a tail. These phenomena ...
/Server push *
WebSocket WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection. The WebSocket protocol was standardized by the IETF as in 2011. The current API specification allowing web applications ...
* mod-php like support via Quercus *
FastCGI FastCGI is a binary protocol for interfacing interactive programs with a web server. It is a variation on the earlier Common Gateway Interface (CGI). FastCGI's main aim is to reduce the overhead related to interfacing between web server and CGI ...


Usage

Resin's market share is small in the grand scheme of Java Application Servers, but some high traffic sites use it, such as Toronto Stock Exchange, Salesforce.com, Condé Nast (parent company of Wired, Vogue, GQ), CNET. NetCraft's February 2012 Survey stated Resin grew to 4,700,000 sites; Resin was the only Java-based web server mentioned. A 2012-page on a Caucho wiki site describes a test procedure with results showing that tested 0k (empty HTML page), 1K, 8K and 64K byte files. At every level Resin matched or exceeded nginx web server performance.


Quercus

Quercus is a Java-based implementation of the PHP language that is included with Resin. According to a slideshow presented by Emil Ong (from Caucho), to a San Francisco Java Meetup Group in April 2008 pertaining to Resin 3.1, an essential difference in the operation of Quercus between the Resin Open Source and the Resin Professional editions is that in Resin Professional the PHP is compiled to Java
bytecode Bytecode (also called portable code or p-code) is a form of instruction set designed for efficient execution by a software interpreter. Unlike human-readable source code, bytecodes are compact numeric codes, constants, and references (norma ...
whereas in the open source version PHP is executed by an interpreter. Caucho stated in 2007 that Quercus was faster than standard PHP 5 (PHP 8 with JIT is much faster than older PHP versions; PHP 5 is no longer supported) although this is only true for the JIT-compiled version in Resin Professional. Quercus ships with Resin.


Licensing

One license covers all components of the Resin architecture. Resin is provided in both an open source GPL license and a Pro version with enhancements for enterprises.


See also

* Comparison of application servers


References


External links


Resin Features
{{PHP Cross-platform software Java enterprise platform Web server software programmed in Java