Misplaced Pages

Resin (software)

Article snapshot taken from[REDACTED] with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

This is an old revision of this page, as edited by 66.27.102.135 (talk) at 00:41, 22 July 2014 (The incorrect citation of the no longer supported version gives a false impression that can be interpreted as slander. Undid revision 617912315 by Struthious Bandersnatch). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 00:41, 22 July 2014 by 66.27.102.135 (talk) (The incorrect citation of the no longer supported version gives a false impression that can be interpreted as slander. Undid revision 617912315 by Struthious Bandersnatch)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)
Resin
Developer(s)Caucho Technology
Stable release4.0.40 / May 13, 2014 (2014-05-13)
Written inJava and C
Operating systemCross-platform
TypeWeb server
LicenseGPLv3 or commercial
Websitewww.caucho.com

Resin is a web server and Java application server from Caucho Technology. In addition to Resin (GPL), Resin Pro is available for enterprise and production environments. Resin supports the Java EE standard as well as a mod_php/PHP like engine called Quercus.

Resin Pro includes optimizations such as built-in caching and features such as clustering support, advanced administration, and the health system that includes HTTP session replication, Java Monitoring, distributed cache replication, and JMS queue replication that are needed in an enterprise environment. While Caucho describes these as "features and enhancements commonly needed in a production environment", Resin Open Source is used without these features.

A 2012 page on a Caucho wiki site describes a test procedure with results saying static HTML files smaller than 64K containing repeating numbers are served faster by Resin than by nginx web server. The page did not state whether Resin Pro or Resin Open Source were used for the test.,

March 2013, Techempower, independently picked Resin Open Source as the fastest open source application server, and then used Resin Open Source to run all of the most popular Java web frameworks due to its speed, including, Spring, Grails, JRuby, Wicket, and Tapestry and compare Java web framework speeds against non-Java web framework speeds. Resin Open Source dominated the first five positions of every test. Being the best of breed implementation open source solution given a large open source competition would indicate that Resin is not in fact crippled, and is in fact an open core implementation, which implies what is released is usable, but additional features come with the non-open source version. Open core means an open source version of the proprietary version has been made available, and licensed in a manner that donates it to the software community at large for partial or complete re-use.to represent all Java web frameworks, and,

Resin market share might be small in the grand scheme of Java Application Servers, but many high traffic sites use Resin, including Toronto Stock Exchange, SalesForce.com, Condé Nast (parent company of Vogue, GQ), CNET. NetCraft's February 2012 Survey states Resin grew to 4,700,000 sites and Resin is used on a number of the Million Busiest Sites. Resin was the only Java-based web server mentioned in NetCraft's survey.

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 oldest application servers and web servers.

Product features

Scalability

  • Elastic Clustering / Cloud support
    • 3rd generation clustering optimized for Virtualization 2.0, EC2 and OpenStack deployments
  • Session Replication
  • Load balancing
  • Distributed Cache

Development

  • Class compilation
  • JIT Profiling and heap analysis
  • No GUI required
  • JUnit support
  • Web Admin
  • DevOps support via CLI and REST control of Resin
  • Apache Ant/Maven/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
  • Transaction support

Web Server

  • Static files/JSP/Servlet/JSF
  • Extensible access logging
  • URL rewriting
  • Proxy caching (similar to Squid)
  • Gzip compression
  • SSL
  • Virtual Hosts
  • Comet/Server push
  • WebSocket
  • mod-php like support via Quercus
  • FastCGI

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 whereas in the open source version PHP is executed by an interpreter.

Caucho states that Quercus is faster than standard PHP although this is only true for the JIT-compiled version in Resin Professional. Quercus ships with Resin.

Licensing

Resin offers a straightforward licensing model; 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. (Note: A license is not needed to run Open Source)


From the Caucho website: "We provide Resin in two flavors because there is a need for both in the marketplace. If your web application is simply a subset of the Java enterprise application components (namely: war files, Java Servlets, JSF, JSP, and Java Database Connectivity) and will not serve a great number of concurrent users, Resin will deliver performance, reliability, operational predictability, and ease of use. Resin does this as the best of breed with performance improvements over other competing open source solutions (Tomcat, Apache Web Server, NginX, Jboss)

Resin Pro is geared towards businesses, governments, and enterprises that require the highest level of scalability and functionality:

  • Companies that want a clear advantage in their development and deployment
  • Businesses whose website or web application has a direct impact on their bottom line
  • Governments who need to the ability to scale a web application to provide real time data
  • Hospitals sharing massive amounts of data to better diagnose patients
  • Entrepreneurs who are ready to assault a new industry with an application or idea that will potentially scale to massive users think Netflix.


These are the areas where the aforementioned Open Source components are not well suited and where we have engineered Resin Pro to include:


  • Dynamic Clustering- We replaced locking 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 rapidly 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 to keep your data secure
  • Smart Software Load balancer- Application load is shared among resources automatically, keeping your resources balanced.
  • 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"


Since version 3.0.9, Resin Open Source has been licensed under the GPL License (version 2 or later), a license which has passed through the Open Source Initiative's License Review Process. Consequently current versions of Resin are significantly less hazardous to use or incorporate into software systems than were previous versions.

See also

References

  1. "Resin Download". Retrieved 2014-04-28.
  2. ^ "Caucho Resin is Officially Certified Against the Java EE 6 Web Profile". Infoq.com. Retrieved 2012-10-25.
  3. ^ "PHP on Java: Best of Both Worlds?". Infoq.com. Retrieved 2012-10-25.
  4. "NginX 1.2.0 versus Resin 4.0.29 performance tests". Caucho.com. Retrieved 2012-04-01.
  5. ^ "Techempower Framework Benchmarks". Techempower.com. Retrieved 2012-10-25.
  6. PRWeb – Wed, Feb 22, 2012 (2012-02-22). "Caucho's Resin Web Server Powers Over 4.7 Million Sites - Yahoo! News". News.yahoo.com. Retrieved 2012-10-25.{{cite web}}: CS1 maint: multiple names: authors list (link) CS1 maint: numeric names: authors list (link)
  7. "February 2012 Web Server Survey | Netcraft". News.netcraft.com. 2012-02-07. Retrieved 2012-10-25.
  8. "About Caucho". Caucho.com. Retrieved 2012-04-01.
  9. "Paul Cowan Discusses the Resin Application Server and Cloud". Infoq.com. Retrieved 2012-10-25.
  10. "Caucho: Resin Cloud Support: 3rd generation Clustering For Elastic Cloud Scaling" (PDF). s3.amazonaws.com. Retrieved 2012-10-25.
  11. "Resin Can Now Act As a Drop-in Replacement for Memcached Solution". Infoq.com. Retrieved 2012-10-25.
  12. "Caucho Technology » Blog Archive » Resin Pro Health System now and in the future". Blog.caucho.com. 2011-08-26. Retrieved 2012-10-25.
  13. "Caucho Resin | Java Application Server | Java EE | PaaS Ready » Java EE Web Profile and beyond". Caucho.com. Retrieved 2012-10-25.
  14. "Caucho Resin | Java Application Server | Java EE | PaaS Ready » Java CDI | Candi". Caucho.com. Retrieved 2012-10-25.
  15. "Caucho Resin | Java Application Server | Web Server | Java EE Certified | PaaS/Cloud Ready » Resin Web Server". Caucho.com. 2012-02-07. Retrieved 2012-10-25.
  16. Emil Ong (2008-04-09), Getting Started With Quercus (PDF), Caucho Technology, retrieved 2009-08-19 (accompanying Caucho blog entry,additional copy of PDF)
  17. "Powered by Google Docs" (PDF). Docs.google.com. Retrieved 2012-10-25.
  18. New Monthly Caucho Newsletter, Caucho Technology, 2008-02-26, retrieved 2013-02-27, I think we're finally getting to the point where we mimic the other implementation of PHP quite precisely (except we have distributed sessions, are faster in compiled mode, etc. :-)).
  19. Resin GPL'ed, retrieved 2009-06-29
  20. Licenses approved through the OSI License Review Process by name, Open Source Initiative, retrieved 2009-07-28

External links

Web server software
Comparisons
Most popular
Other
Retired
Categories:
Resin (software) Add topic