Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Bottlenecks are out! Java Cache Standard (JSR-...
Search
Galder Zamarreño
April 20, 2013
Technology
0
59
Bottlenecks are out! Java Cache Standard (JSR-107) is in!
Galder Zamarreño
April 20, 2013
Tweet
Share
More Decks by Galder Zamarreño
See All by Galder Zamarreño
Principles and Patterns for Streaming Data Analysis
galderz
0
87
Streaming Data Analysis with Kubernetes
galderz
0
2.4k
The Rough Guide to Java RPC Frameworks
galderz
1
6.9k
Streaming Data Analysis with Kubernetes
galderz
1
360
Streaming Data Workshop @ Codemotion Madrid
galderz
0
1.4k
Streaming Data : ni pierdas el tren, ni esperes en balde
galderz
0
2.9k
Data grids : descubre qué esconden los datos
galderz
0
3k
Streaming Data Workhop @ Devoxx
galderz
0
320
Streaming Data Analysis with Kubernetes
galderz
0
2k
Other Decks in Technology
See All in Technology
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
Terraform Stacks入門 #HashiTalks
msato
0
360
Zennのパフォーマンスモニタリングでやっていること
ryosukeigarashi
0
130
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
AI前提のサービス運用ってなんだろう?
ryuichi1208
8
1.4k
Engineer Career Talk
lycorp_recruit_jp
0
180
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
320
Lexical Analysis
shigashiyama
1
150
Taming you application's environments
salaboy
0
190
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
1.3k
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
330
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
310
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
It's Worth the Effort
3n
183
27k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Fireside Chat
paigeccino
34
3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Unsuck your backbone
ammeep
668
57k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Facilitating Awesome Meetings
lara
50
6.1k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
97
Into the Great Unknown - MozCon
thekraken
32
1.5k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Transcript
None
Bottlenecks are out! Java Cache Standard (JSR-107) is in!
! Galder Zamarreño Senior Software Engineer Red Hat, Inc ! 20th April 2013, São Paulo
Galder Zamarreño • R&D Engineer, Red Hat Inc. • Infinispan
developer • Escalante founder and lead • Twitter: @galderz
Agenda • Why we care about bottlenecks • What is
JCache? • Infinispan JCache implementation in action
Why do we care about bottlenecks?
Bottleneck problems Bottlenecks decrease throughput, increase latency... and make users
:(((
We care because we want to make users :))
How can JCache help remove bottlenecks?
What is JCache? Temporary caching API for Java (driven by
JSR-107), originally scheduled to be in EE7... but not any more :(
Infinispan JCache impl JCache 0.6 implemented in Infinispan 5.3.0.Alpha1, but
some parts still in flux
Caching data Caching data that is expensive to retrieve (i.e.
DB) or hard to calculate can boost performance :))
Demo 1: Caching data
Why not use a ConcurrentHashMap to cache data?
Beyond CHMs... JCache allows data to expire, is pluggable with
persistent stores, is designed with distribution in mind, ...etc
Not a ConcurrentMap javax.cache.Cache does not extend j.u.c.ConcurrentMap, but borrows
some ideas...
Demo 2: Cache vs ConcurrentMap
Scale up by distributing the cache
Go multi-node! When a single machine cannot cope with load,
and not $$$ for more powerful machine...
Go multi-node! Run app in multiple nodes, and distribute cache
contents!
Get failover for free! Providing failover for data stored in
caches is one of the biggest advantages of distributed caches!
Demo 3: Cache goes distributed!
Integrate JCache with enterprise technologies
CDI and Transactions Integration with CDI or JTA Transactions is
optional in the spec, but Infinispan implements it :)
Demo 4: Transactional JCache
Summary Q - How JCache can help you remove bottlenecks?
Summary • Provides in-memory, temporary storage, that's better than a
(Concurrent) HashMap • Allows you to distribute the cache, to scale out your application! (and get failover!) • Makes it easy to integrate with enterprise technologies
Questions • http://infinispan.org • http://www.jcp.org/en/jsr/detail?id=107 • https://github.com/galderz/jcache