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
Ruby-on-Infinispan: Cloud-tastic Data Grids for...
Search
Galder Zamarreño
May 11, 2011
Technology
0
53
Ruby-on-Infinispan: Cloud-tastic Data Grids for Ruby apps
Galder Zamarreño
May 11, 2011
Tweet
Share
More Decks by Galder Zamarreño
See All by Galder Zamarreño
Principles and Patterns for Streaming Data Analysis
galderz
0
96
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
2k
Other Decks in Technology
See All in Technology
「守る」から「進化させる」セキュリティへ ~AWS re:Inforce 2025参加報告~ / AWS re:Inforce 2025 Participation Report
yuj1osm
1
150
マイクロモビリティシェアサービスを支える プラットフォームアーキテクチャ
grimoh
1
260
モダンな現場と従来型の組織——そこに生じる "不整合" を解消してこそチームがパフォーマンスを発揮できる / Team-oriented Organization Design 20250825
mtx2s
6
2.7k
DuckDB-Wasmを使って ブラウザ上でRDBMSを動かす
hacusk
1
130
KiroでGameDay開催してみよう(準備編)
yuuuuuuu168
1
150
広島銀行におけるAWS活用の取り組みについて
masakimori
0
150
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
26
8.3k
Webアクセシビリティ入門
recruitengineers
PRO
2
900
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
310
実践アプリケーション設計 ①データモデルとドメインモデル
recruitengineers
PRO
4
840
第4回 関東Kaggler会 [Training LLMs with Limited VRAM]
tascj
12
1.9k
事業価値と Engineering
recruitengineers
PRO
6
3.9k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Site-Speed That Sticks
csswizardry
10
790
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
780
Rails Girls Zürich Keynote
gr2m
95
14k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Designing for Performance
lara
610
69k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Transcript
Thursday, November 3, 11
Ruby-on-Infinispan Cloud-tastic Data Grids for Ruby apps Galder Zamarreño Senior
Software Engineer Red Hat, Inc Thursday, November 3, 11
Galder Zamarreño • R&D Engineer, Red Hat Inc. • Infinispan
developer • Work on various JBoss projects • Twitter: @galderz • Blog: zamarreno.com Thursday, November 3, 11
Agenda • What is TorqueBox? • Rails caching limitations •
What is Infinispan? • TorqueBoxStore • Cloud storage with Infinispan Thursday, November 3, 11
What is TorqueBox? The mating of JRuby to JBoss Application
Server Thursday, November 3, 11
What is TorqueBox? Thursday, November 3, 11
Goals of TorqueBox • Support Ruby web frameworks • Rails,
Sinatra, Rack • Go beyond web • Messaging • Enterprise-Grade Caching • Data Grid Storage Thursday, November 3, 11
Hmmm, but... ... Rails already supports caching ... and why
would I want to store data in a data grid? Thursday, November 3, 11
What’s wrong with Rails caching? Thursday, November 3, 11
Caches are OK Actually, action and fragment caches are useful
in production but they don’t cover all needs Thursday, November 3, 11
Cache Stores Choice provided by Rails is a bit limited...
Thursday, November 3, 11
MemoryStore Does not share cache contents and is not concurrent-safe
Thursday, November 3, 11
MemCacheStore Caches in Danga’s Memcached servers Probably the most popular
option in production Thursday, November 3, 11
MemCacheStore Do you really need a separate process for a
cache? Cache operations not local... Thursday, November 3, 11
TorqueBoxStore Brand new store! Integrates with Infinispan, a data grid
platform from JBoss Thursday, November 3, 11
Introducing Thursday, November 3, 11
What is Infinispan? An in-memory, highly available, elastic, and open
source (LGPL) data grid platform Thursday, November 3, 11
Clustered Consistency achieved via invalidation, replication and distribution modes Thursday,
November 3, 11
API Map-like key/value store and JPA layer via Hibernate OGM
Thursday, November 3, 11
Embedded Access Thursday, November 3, 11
Remote Access •Via protocols : •REST •Hot Rod Thursday, November
3, 11
And more... • Highly concurrent with MVCC locking • Persistence,
not just in-memory • Adaptive eviction and expiration • JMX and RHQ server monitoring • ...etc Thursday, November 3, 11
Why should I use TorqueBoxStore? Thursday, November 3, 11
TorqueBoxStore Provides a local, in-memory, highly-concurrent, clustered cache Thursday, November
3, 11
config/application.rb Thursday, November 3, 11
Default Cache Mode When TorqueBox clustered, it uses Invalidation, otherwise
it’s just Local Thursday, November 3, 11
Beyond Rails Caching... Thursday, November 3, 11
Durable Counters Thursday, November 3, 11
Enough of caching... Thursday, November 3, 11
What’s all about data grid storage? Thursday, November 3, 11
Traditional 3-tier App Thursday, November 3, 11
Typical IaaS App Thursday, November 3, 11
Traditional PaaS App Thursday, November 3, 11
Where’s your data stored?? Thursday, November 3, 11
Clouds are ephemeral!! Thursday, November 3, 11
State Thursday, November 3, 11
Virtualizing Data Some public services exist (i.e. Amazon RDS), but
not all cloud deployments are public! Thursday, November 3, 11
Characteristics of DaaS Elastic, scalable and highly available! Thursday, November
3, 11
DaaS with Infinispan Thursday, November 3, 11
Architecture Manage and Monitor Thursday, November 3, 11
What are those Infinispan nodes?? Thursday, November 3, 11
Either • Infinispan Hot Rod servers started via: • or
servlet container w/ Infinispan REST war • or JBoss Enterprise Data Grid nodes Thursday, November 3, 11
How do Ruby apps talk to them? Thursday, November 3,
11
Talk to Infinispan REST Thursday, November 3, 11
Hmm, Hot Rod is a custom protocol... Thursday, November 3,
11
JRuby Hot Rod client github.com/noelo/hotrod-jruby.git Thursday, November 3, 11
What’s next? Thursday, November 3, 11
Roadmap ActiveModel backend that stores stuff in Infinispan data grid
nodes Thursday, November 3, 11
Summary TorqueBoxStore: in-memory, clustered & highly concurrent Rails and low
level caching! Thursday, November 3, 11
Summary Infinispan servers: distributed, elastic and highly available cloud-ready store
Thursday, November 3, 11
Questions? torquebox.org - infinispan.org #torquebox #infinispan on IRC @torquebox -
@infinispan speakerrate.com/galder Thursday, November 3, 11