$30 off During Our Annual Pro Sale. View Details »
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
54
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
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
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
AI駆動開発の実践とその未来
eltociear
1
250
多様なデジタルアイデンティティを攻撃からどうやって守るのか / 20251212
ayokura
0
490
コンテキスト情報を活用し個社最適化されたAI Agentを実現する4つのポイント
kworkdev
PRO
1
1.6k
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
380
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
0
290
AWS運用を効率化する!AWS Organizationsを軸にした一元管理の実践/nikkei-tech-talk-202512
nikkei_engineer_recruiting
0
110
Lessons from Migrating to OpenSearch: Shard Design, Log Ingestion, and UI Decisions
sansantech
PRO
1
150
生成AI活用の型ハンズオン〜顧客課題起点で設計する7つのステップ
yushin_n
0
240
Fashion×AI「似合う」を届けるためのWEARのAI戦略
zozotech
PRO
2
860
1人1サービス開発しているチームでのClaudeCodeの使い方
noayaoshiro
2
410
AIの長期記憶と短期記憶の違いについてAgentCoreを例に深掘ってみた
yakumo
4
440
LLM-Readyなデータ基盤を高速に構築するためのアジャイルデータモデリングの実例
kashira
0
270
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
710
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Everyday Curiosity
cassininazir
0
100
Unsuck your backbone
ammeep
671
58k
The Invisible Side of Design
smashingmag
302
51k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
160
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
63
It's Worth the Effort
3n
187
29k
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