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
67
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
110
Streaming Data Analysis with Kubernetes
galderz
0
2.5k
The Rough Guide to Java RPC Frameworks
galderz
1
7.1k
Streaming Data Analysis with Kubernetes
galderz
1
420
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
370
Streaming Data Analysis with Kubernetes
galderz
0
2.1k
Other Decks in Technology
See All in Technology
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
190
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
500
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
200
What happened to RubyGems and what can we learn?
mikemcquaid
0
310
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
240
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
470
【Ubie】AIを活用した広告アセット「爆速」生成事例 | AI_Ops_Community_Vol.2
yoshiki_0316
1
110
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
200
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.6k
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
170
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
480
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
Featured
See All Featured
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
69
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Producing Creativity
orderedlist
PRO
348
40k
Design in an AI World
tapps
0
140
Amusing Abliteration
ianozsvald
0
100
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
180
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
86
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
Bash Introduction
62gerente
615
210k
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