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.

[Codemash] Caching Made "Bootiful"!

Needing more performance from your Java applications? Is latency causing you stress? Repetitive loading of the data in applications, burning CPU time, taxing I/O / disk access? Too many applications caching the same data sets pushing the limits of your data management and application architecture? If so, take a look at JCache! This code-driven session demonstrates how to integrate Hazelcast Distributed Caches into your Spring or Java EE applications. Adding a bunch of annotations to a method can achieve an orders-of-magnitude speed improvement in applications with high-latency.

Related Books

Free with a 30 day trial from Scribd

See all
  • Be the first to comment

  • Be the first to like this

[Codemash] Caching Made "Bootiful"!

  1. 1. whoiam Señor Solutions Architect @Hazelcast @gAmUssA on the internetz
  2. 2. •Performance • Offload expensive parts of your architecture •Scale up – get the most out of one machine • Scale out – add more capacity with more machines • Usually very fast and easy to apply Cache is good for…
  3. 3. Let’s recap!
  4. 4. © 2017 Hazelcast Inc. @gamussa 0. Inception public class SpringwebinarApplication { public static interface CityService { public String getCity(); } @Bean public CityService getService() { return new CityService() { @Override public String getCity() { // slow code goes here! return result; } }; } }
  5. 5. © 2017 Hazelcast Inc. @gamussa 1. Enable Caching import org.springframework.cache.annotation.Cacheable; import org.springframework.cache.annotation.EnableCaching; @SpringBootApplication @EnableCaching public class SpringwebinarApplication { public static interface CityService { @Cacheable("city") public String getCity(); } @Bean public CityService getService() { return new CityService() { @Override public String getCity() { // slow code goes here! return result; } }; } }
  6. 6. © 2017 Hazelcast Inc. @gamussa 2. Enable Distributed Caching import org.springframework.cache.annotation.Cacheable; import org.springframework.cache.annotation.EnableCaching; @SpringBootApplication @EnableCaching public class SpringwebinarApplication { public static interface CityService { @Cacheable("city") public String getCity(); } @Bean public CityService getService() { return new CityService() { @Override public String getCity() { // slow code goes here! return result; } }; } @Bean public HazelcastInstance getInstance() { // return Hazelcast.newHazelcastInstance(); return HazelcastClient.newHazelcastClient(); } }
  7. 7. © 2017 Hazelcast Inc. @gamussa 3. Embrace the standards – Enable JCache import javax.cache.annotation.CacheResult; import org.springframework.cache.annotation.EnableCaching; @SpringBootApplication @EnableCaching public class SpringwebinarApplication { public static interface CityService { @CacheResult(cacheName = "city") public String getCity(); } @Bean public CityService getService() { return new CityService() { @Override public String getCity() { // slow code goes here! return result; } }; } }

×