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
66
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
100
Streaming Data Analysis with Kubernetes
galderz
0
2.5k
The Rough Guide to Java RPC Frameworks
galderz
1
7k
Streaming Data Analysis with Kubernetes
galderz
1
410
Streaming Data Workshop @ Codemotion Madrid
galderz
0
1.4k
Streaming Data : ni pierdas el tren, ni esperes en balde
galderz
0
3k
Data grids : descubre qué esconden los datos
galderz
0
3.1k
Streaming Data Workhop @ Devoxx
galderz
0
360
Streaming Data Analysis with Kubernetes
galderz
0
2.1k
Other Decks in Technology
See All in Technology
短期間でRAGシステムを実現 お客様と歩んだ生成AI内製化への道のり
taka0709
1
150
GCASアップデート(202508-202510)
techniczna
0
240
Amazon Q Developer CLIをClaude Codeから使うためのベストプラクティスを考えてみた
dar_kuma_san
0
310
DMMの検索システムをSolrからElasticCloudに移行した話
hmaa_ryo
0
340
Data Engineering Guide 2025 #data_summit_findy by @Kazaneya_PR / 20251106
kazaneya
PRO
0
290
今のコンピュータ、AI にも Web にも 向いていないので 作り直そう!!
piacerex
0
420
新米エンジニアをTech Leadに任命する ー 成長を支える挑戦的な人と組織のマネジメント
naopr
1
340
組織全員で向き合うAI Readyなデータ利活用
gappy50
5
2.1k
AI時代の発信活動 ~技術者として認知してもらうための発信法~ / 20251028 Masaki Okuda
shift_evolve
PRO
1
140
OpenCensusと歩んだ7年間
bgpat
0
320
書籍『実践 Apache Iceberg』の歩き方
ishikawa_satoru
0
440
パフォーマンスチューニングのために普段からできること/Performance Tuning: Daily Practices
fujiwara3
2
190
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
650
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
Writing Fast Ruby
sferik
630
62k
A better future with KSS
kneath
239
18k
How STYLIGHT went responsive
nonsquared
100
5.9k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
How to Ace a Technical Interview
jacobian
280
24k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Context Engineering - Making Every Token Count
addyosmani
8
330
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