Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Dynacache vs Memcached  - Caching Technologies for Java Applications
Technologies <ul><li>General object cache attributes </li></ul><ul><li>Memcached </li></ul><ul><li>DistributedMap (part of...
General Object Cache Characteristics <ul><li>An object cache is a Key-Value lookup table  </li></ul><ul><ul><li>Similar to...
Overview: Memcached <ul><li>“ Free & open source, high-performance, distributed memory object caching system” (from memcac...
Overview: DistributedMap <ul><li>Built-in component in WAS Network Deployment </li></ul><ul><ul><li>Only available to Java...
Advantages of Each Technology <ul><li>Dynacache </li></ul><ul><ul><li>Memory and disk storage for cache with ability to re...
Upcoming SlideShare
Loading in …5
×

Caching technology comparison

5,211 views

Published on

This is a series of posts comparing Dynacache with other caching technologies:

Published in: Technology, Education
  • Be the first to comment

Caching technology comparison

  1. 1. Dynacache vs Memcached - Caching Technologies for Java Applications
  2. 2. Technologies <ul><li>General object cache attributes </li></ul><ul><li>Memcached </li></ul><ul><li>DistributedMap (part of Dynacache) </li></ul>
  3. 3. General Object Cache Characteristics <ul><li>An object cache is a Key-Value lookup table </li></ul><ul><ul><li>Similar to a java.util.Hashtable </li></ul></ul><ul><li>Have configurable maximum sizes </li></ul><ul><ul><li>May be configured number of cache entries or memory size </li></ul></ul><ul><ul><li>Objects typically discarded on least-recently-used policy when cache is full </li></ul></ul><ul><ul><ul><li>Some caches may offer other algorithms </li></ul></ul></ul><ul><li>Have configurable lifetimes per cache entry </li></ul>
  4. 4. Overview: Memcached <ul><li>“ Free & open source, high-performance, distributed memory object caching system” (from memcached.org) </li></ul><ul><li>Main components: </li></ul><ul><ul><li>memcached server – standalone server storing cached items </li></ul></ul><ul><ul><li>memcached client software </li></ul></ul><ul><ul><ul><li>Available for multiple programming languages </li></ul></ul></ul><ul><ul><ul><li>Keys & values must be transmitted over TCP/IP </li></ul></ul></ul><ul><li>Cluster design: </li></ul><ul><ul><li>Client uses hashing algorithm to assign keys to servers </li></ul></ul><ul><ul><li>Each key is cached on at most one server </li></ul></ul><ul><ul><li>Explicit invalidations go only to the server which should store that key </li></ul></ul>
  5. 5. Overview: DistributedMap <ul><li>Built-in component in WAS Network Deployment </li></ul><ul><ul><li>Only available to Java clients </li></ul></ul><ul><li>Content is cached in JVM memory </li></ul><ul><ul><li>Cache operations are POJO calls </li></ul></ul><ul><li>Multiple cache instances can be created </li></ul><ul><ul><li>Each is treated separately for synchronization, LRU and invalidation </li></ul></ul><ul><li>Cluster design: </li></ul><ul><ul><li>Cache keys may be cached in multiple nodes </li></ul></ul><ul><ul><li>Explicit invalidation notifies peers to discard the cache key </li></ul></ul><ul><ul><li>Option available to push entries to peers on cache insert </li></ul></ul>
  6. 6. Advantages of Each Technology <ul><li>Dynacache </li></ul><ul><ul><li>Memory and disk storage for cache with ability to restrict size in terms of # of entries and # of bytes </li></ul></ul><ul><ul><li>Fast cache operations </li></ul></ul><ul><ul><ul><li>The key raison d'etre for a cache </li></ul></ul></ul><ul><ul><ul><li>Lookups through POJO calls - no network delays </li></ul></ul></ul><ul><ul><ul><li>No serialization/ deserialization of keys and values – lower CPU consumption </li></ul></ul></ul><ul><ul><li>Mature, well-supported part of WAS </li></ul></ul><ul><ul><ul><li>Used in Connections, other ICS products </li></ul></ul></ul><ul><ul><ul><li>“ We know the developers” </li></ul></ul></ul><ul><ul><li>Priority-based cache algorithm available </li></ul></ul><ul><ul><li>Variety of tools available for Administering, Monitoring and Configuration integrated with WAS </li></ul></ul><ul><ul><ul><li>Mbean, Extended Cache Monitor </li></ul></ul></ul><ul><ul><li>Higher QOS with WebSphere eXtreme scale integration </li></ul></ul><ul><ul><li>Leverages scalable, resilient and field tested WAS replication & HAManager infrastructure </li></ul></ul><ul><ul><li>Comprehensive cache metrics available including mbean and PMI statistics </li></ul></ul><ul><ul><li>Can be plugged in as an OpenJPA L2 cache </li></ul></ul><ul><li>Memcached </li></ul><ul><ul><li>Does not consume memory in Java heap </li></ul></ul><ul><ul><ul><li>This is less important as we move to 64-bit JVMs </li></ul></ul></ul><ul><ul><li>Single instance of each cache key </li></ul></ul><ul><ul><ul><li>No peer-to-peer traffic on invalidations </li></ul></ul></ul><ul><ul><li>Usable in Tomcat, WAS CE, php applications </li></ul></ul>

×