Cacheonix is an Open Source Java cache that helps developers to scale applications horizontally by providing a highly concurrent local cache and a strictly consistent distributed cache.
The distributed cache enables development in a cluster while preserving the simplicity of design and coding in a single Java VM. Learn how to add Cacheonix to your project.
Scale your application horizontally - Cacheonix allows applications to scale linearly and predictably by minimizing the need to go through scalability bottlenecks such as transactional database and other shared serially accessed resources.
Maximize application performance - Cacheonix improves performance of your application by caching frequently-accessed data that is stored in a database or produced by time-consuming operations such as financial calculations, map-reduce or reports.
Reduce load on the database - Cacheonix allows you significantly reduce the load on the database by storing all frequently-accessed database data in a strictly-consistent distributed write-through cache.
Simplify cluster management - Cacheonix simplifies cluster management by eliminating the need for manual cluster configuration. Cacheonix cluster automatically adds new machines to the cluster and balances the load by sending parts of the cache data to the new cluster members.
Minimize GC pauses - Cacheonix makes it possible to create a cluster of smaller JVMs inside a server with large RAM. Because each JVM serves fewer users and uses less memory, the garbage collections occur at different times, so users exposure to GC delays becomes smaller and is spread in time.
Web application cache - Cacheonix web cache improves performance and scalability of web applications by serving dynamically generated content from memory. Configuring the web cache is as easy as adding a servlet filter to your web.xml.
Distributed Java cache - Cacheonix distributed caching capability for Java provides reliable access to application data while enabling linear horizontal scalability, low-latency and very high throughput and simplified data access programming.
Application cache - An application cache is a cache that an application accesses directly. An application benefits from using Cacheonix by accessing most frequently accessed data in memory.
Second level (L2) cache - An L2 cache is a cache that provides caching services to an object-relational mapping (ORM) frameworks or data mapping (DM) frameworks. Cacheonix supports Hibernate, Data Nucleus, MyBatis and iBatis.
Cacheonix is licensed under the business-friendly LGPL.