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
Distributed Comet with Lift and Amazon SNS
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Richard Dallaway
October 06, 2012
Technology
0
170
Distributed Comet with Lift and Amazon SNS
Description of using Amazon SNS to distribute comet messages around a cluster of Liftweb machines.
Richard Dallaway
October 06, 2012
Tweet
Share
More Decks by Richard Dallaway
See All by Richard Dallaway
AI Roadmap
d6y
0
51
Voice to guide "difficult" recycling queries
d6y
0
66
Brighton Java: Day in the life...
d6y
0
240
Day in the Life of a Functional Programmer
d6y
0
640
Exoplanet Safari
d6y
1
460
Types Working For You
d6y
1
2.7k
Towards Browser and Server Utopia with Scala.js: an example using CRDTs
d6y
0
7.7k
Code Review Gems
d6y
1
2k
Woot for Lift
d6y
2
3.3k
Other Decks in Technology
See All in Technology
社内ワークショップで終わらせない 業務改善AIエージェント開発
lycorptech_jp
PRO
1
400
Serverless Agent Architecture on Azure / serverless-agent-on-azure
miyake
1
110
Eight Engineering Unit 紹介資料
sansan33
PRO
1
6.8k
Snowflake Night #2 LT
taromatsui_cccmkhd
0
270
Digitization部 紹介資料
sansan33
PRO
1
6.9k
opsmethod第1回_アラート調査の自動化にむけて
yamatook
0
330
AI活用を"目的"にしたら、データの本質が見えてきた - Snowflake Intelligence実験記 / chasing-ai-finding-data
pei0804
0
820
論文検索を日本語でできるアプリを作ってみた
sailen2
0
140
競争優位を生み出す戦略的内製開発の実践技法
masuda220
PRO
2
500
男(監査)はつらいよ - Policy as CodeからAIエージェントへ
ken5scal
4
640
大規模な組織におけるAI Agent活用の促進と課題
lycorptech_jp
PRO
5
6.6k
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
360
Featured
See All Featured
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
117
110k
4 Signs Your Business is Dying
shpigford
187
22k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Docker and Python
trallard
47
3.7k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
470
How GitHub (no longer) Works
holman
316
140k
The Cult of Friendly URLs
andyhume
79
6.8k
エンジニアに許された特別な時間の終わり
watany
106
240k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
100
A Modern Web Designer's Workflow
chriscoyier
698
190k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
200
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Transcript
Distributed Comet with Lift and Amazon SNS Richard Dallaway @d6y
Jono Ferguson @jonoabroad
[email protected]
You have multiple users chatting to your server, real-time using
comet. server1:8080 "Hi" "Hi" Load balancer for http://myapp:80 Easy. All is good in the world.
You add another server. server1:8080 "Hi" "Hi" Load balancer for
http://myapp:80 server2:8081 "yo!" "yo!" How does the "Hi" message get to the "yo" users too?
Here's how...
During boot, each server registers with a Simple Notification Service
topic... server1:8080 Load balancer for http://myapp:80 server2:8081 AWS SNS: topic = "chat" Register me to "chat" R server1:/8080/ confirmed! C
When someone chats, the message goes to SNS first.... server1:8080
"Hi" Load balancer for http://myapp:80 server2:8081 AWS SNS: topic = "chat" "Hi"
SNS distributes it back to all registered servers (that's what
SNS does).... server1:8080 Load balancer for http://myapp:80 server2:8081 AWS SNS: topic = "chat" "Hi"
Finally, each server can push back to all connected clients.
server1:8080 Load balancer for http://myapp:80 server2:8081 AWS SNS: topic = "chat" "Hi" "Hi" "Hi" "Hi"
Huzzah.
Servers are identical. (no special per-instance configuration)
Servers don't have to know about each other. (and SNS
is cheap, fast & reliable)
Doesn't have to be SNS. Anything with a publish/subscribe model
can do this (e.g., RabbitMQ)
https://github.com/SpiralArm/liftmodules-aws-sns