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
ActionCable(Rails5) + Application Load BalancerでWebSocketをバランシング!
Search
sutetotanuki
August 31, 2016
Programming
0
920
ActionCable(Rails5) + Application Load BalancerでWebSocketをバランシング!
ActionCable(Rails5) + Application Load BalancerでWebSocketをバランシング!
sutetotanuki
August 31, 2016
Tweet
Share
More Decks by sutetotanuki
See All by sutetotanuki
Core Web Vitals を改善する Next.js の機能群
sutetotanuki
0
1.1k
サーバーレスRDBの選択肢
sutetotanuki
0
930
今日から始めるAmplify DataStore
sutetotanuki
0
1k
Kotlin Coroutine 基本的な使い方
sutetotanuki
0
600
20191011_devio_osaka.pdf
sutetotanuki
0
2.1k
higobashi-aws-7-ecs
sutetotanuki
4
2k
server-engineer-android-introduction
sutetotanuki
0
750
Go開発で実際にやった事一通り
sutetotanuki
3
3.3k
開発環境でのDocker活用事例と本番運用に向けて考えたこと
sutetotanuki
5
5.1k
Other Decks in Programming
See All in Programming
Git Lint
bkuhlmann
4
740
はてなにおける CSS Modules、及び CSS Modules に足りないもの / CSS Modules in Hatena, and CSS Modules missing parts
mizdra
3
330
try!Swift Tokyo 2024 参加報告 LT
akidon0000
1
190
Milestoner
bkuhlmann
1
400
Micro Frontends for Java Microservices - Devnexus 2024
mraible
PRO
0
420
SwiftUI Performance 不要なViewの再描画と更新を抑える
bigamitiongit
1
160
プールにゆこう
irof
2
120
Designing for tomorrow's programming workflows
honnibal
PRO
2
110
本格ローグライク制作にEbitengineを選んでみた
nagainaganawa
0
290
What We Can Learn From OSS
inouehi
0
400
Elm 0.19.0 Changes
bkuhlmann
0
480
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
8
3.6k
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
76
41k
Practical Orchestrator
shlominoach
181
9.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
36
2.5k
Web development in the modern age
philhawksworth
202
10k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
GraphQLとの向き合い方2022年版
quramy
31
12k
A Modern Web Designer's Workflow
chriscoyier
688
190k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
321
20k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
344
19k
GitHub's CSS Performance
jonrohan
1023
450k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Transcript
"DUJPO$BCMF "-#Ͱόϥϯγϯά
ࣗݾհ αʔόʔαΠυΤϯδχΞ ओʹ3BJMT Ϋϥεϝιουઌ݄ೖࣾ ݱࡏ།ҰͷେࡕۈϞόΠϧόοΫΤϯυάϧʔϓ ऐ͍͠ ઌʑिʹୈೋࢠ͕ੜ·Ε·ͨ͠
ࣗݾհ "84ษڧதʂ ͳͷͰͦͷลԹ͔͍ͰݟͯΒ͑Δͱɹ
͋ͬɺ͋ͱ࠷ۙ͜ΕʹϋϚΓ·ͨ͠
"DUJPO$BCMF "-#ͰόϥϯγϯάΛͬͯΈ·ͨ͠
"DUJPO$BCMFΞʔΩςΫνϟ
4PDLFUͷऔΓѻ͍
3BDLIJKBDLJOH"1*Λར༻͠ 4PDLFUΛ3BDL͔Βड͚औΓ "DUJPO$BCMFͰར༻͢Δ&WFOU-PPQʹొ͢Δ 3BDL "DUJPO$BCMF &WFOU-PPQ *0ΦϒδΣΫτ TPDLFU
ͦ͏͢Δ͜ͱͰ3BDLͷ ௨ৗΞϓϦέʔγϣϯͷॲཧͱ 8FC4PDLFUͷॲཧ͕ಉډͰ͖Δ
ϝοηʔδ৴
αʔόʔͷߏཁૉ 4VCTDSJCFS αʔόʔ 1VCMJTIFS αʔόʔ 1VC4VCαʔόʔ
ϢχΩϟετ class ChatChannel < ApplicationCable::Channel def some_method transmit(action: 'info', message:
"message") end end
1VC4VCαʔόʔ
1VC4VCαʔόʔ
1VC4VCαʔόʔ
ϒϩʔυΩϟετ ActionCable.server.broadcast "chat", "message"
1VC4VCαʔόʔ
1VC4VCαʔόʔ
1VC4VCαʔόʔ
1VC4VCαʔόʔ
1VC4VCαʔόʔ
"DUJPO$BCMFσϑΥϧτͰ1VC4VCͳͷͰ ԣʹฒͯσϒϩΠ͢Δ͚ͩͰ͋Δఔεέʔϧ͍ͯ͘͠
1VC4VCαʔόʔ 3FEJTɺ1PTUHSFTRM͔Β બՄೳ DPOpHDBCMFZNM production: adapter: postgresql(redis)
ࠓճͬͯΈͨܥͳͷͰ͓खܰ͞༏ઌͰ 3BJMTຊମ͕͏1PTUHSFTRM 3%4 Λ 1VC4VCαʔόʔͱͯ͠༻
"QQMJDBUJPO-PBE#BMBODFS
None
8FC4PDLFUΛ͏ʹ͋ͨͬͯ $MBTTJD&-#ͰͰ͖ͳͯ͘ɺ"-#ͰͰ͖Δ͜ͱ
Request: Connection: Upgrade Response Upgrade: websocket &-7W $MBTTJDͰ8FC4PDLFUͷ6QHSBEFʹ ඞཁͳϔομΛૹΔ͜ͱ͕Ͱ͖ͳ͔ͬͨ
&-7W ඵ σϑΥϧτ ແ௨৴͕ଓ͘ͱ λΠϜΞτ͞Εͨ
"-#Ͱ͜ΕΒͷ͕ղফ͞Ε ͙͢ʹ8FC4PDLFUΛ͏͜ͱ͕Ͱ͖Δ
"-#Ͱ-ʹରԠ͠ 8FC4PDLFUαʔόʔͱ ී௨ͷ8FCαʔόʔͱ1BUIͳͲͰ؆୯ʹ ৼΓ͚ΕΔΑ͏ʹͳͬͨ /html/* /socket/*
"-# "DUJPO$BCMFͳΒ ී௨ʹσϓϩΠͯ͠ԣʹฒΔ͚ͩͰ ͱΓ͋͑ͣόϥϯε͢Δʂ
%&.0 ͕࣌ؒ͋Ε
%&.0ͷߏ 8FC4PDLFU༻ͷΠϯελϯε )5.-Λฦ͢Πϯελϯε DBCMF ͦΕҎ֎ɹ
8F"SF)JSJOH େࡕࣄॴͰҰॹʹಇ͖·ͤΜ͔ʂʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠