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
今日で分かる!カスタムコップの作り方
Search
Terai Shogo
October 17, 2024
Programming
2
590
今日で分かる!カスタムコップの作り方
Reject on Rails 2024 (
https://gotanda-rb.connpass.com/event/330965/
)で発表した内容です。
Terai Shogo
October 17, 2024
Tweet
Share
More Decks by Terai Shogo
See All by Terai Shogo
Kaigi on Rails 2024 〜運営の裏側〜
krpk1900
1
190
【Kaigi on Rails 2024】YOUTRUST スポンサーLT
krpk1900
1
330
SNS特有のタイムライン機能におけるYOUTRUSTの工夫点
krpk1900
0
23
技術的負債に対してカスタムコップでできること
krpk1900
0
470
サービスを軌道に乗せるまで一人でやったすべてのこと
krpk1900
20
7.7k
RailsアプリでのCQSの運用を支える仕組みと文化
krpk1900
0
54
Kaigi on Rails 2023 〜運営の裏側〜
krpk1900
0
910
Fat Modelを解消するためのCQRSアーキテクチャ
krpk1900
6
8.8k
【OPEN CODE】YOUTRUST サーバーサイド編
krpk1900
0
150
Other Decks in Programming
See All in Programming
現場で役立つモデリング 超入門
masuda220
PRO
15
3.2k
카카오페이는 어떻게 수천만 결제를 처리할까? 우아한 결제 분산락 노하우
kakao
PRO
0
110
Click-free releases & the making of a CLI app
oheyadam
2
110
最新TCAキャッチアップ
0si43
0
140
受け取る人から提供する人になるということ
little_rubyist
0
230
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
1
110
WebフロントエンドにおけるGraphQL(あるいはバックエンドのAPI)との向き合い方 / #241106_plk_frontend
izumin5210
4
1.4k
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
3rd party scriptでもReactを使いたい! Preact + Reactのハイブリッド開発
righttouch
PRO
1
600
Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
cer
PRO
0
310
エンジニアとして関わる要件と仕様(公開用)
murabayashi
0
280
CSC509 Lecture 12
javiergs
PRO
0
160
Featured
See All Featured
Statistics for Hackers
jakevdp
796
220k
Happy Clients
brianwarren
98
6.7k
Code Reviewing Like a Champion
maltzj
520
39k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
Gamification - CAS2011
davidbonilla
80
5k
How STYLIGHT went responsive
nonsquared
95
5.2k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Building Applications with DynamoDB
mza
90
6.1k
BBQ
matthewcrist
85
9.3k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Transcript
גࣜձࣾ:0653645 ࣉҪলޗ ࠓͰ͔Δʂ ΧελϜίοϓͷ࡞Γํ
ࣗݾհ w ࣉҪলޗ !LSQL@EFW w גࣜձࣾ:0653645 w 43& ύϑΥʔϚϯεվળͳͲ
w ,BJHJPO3BJMT0SHBOJ[FS w ݸਓ։ൃ w ੮ସ͑ϝʔΧʔ w େ୩ϝʔλʔ w ੈքҰηΩϡϦςΟ͕ݎ࿚ͳΞϓϦ !LSQL@EFW
$'1ͷ༰ ΧελϜίοϓಋೖͷϞνϕʔγϣϯͱϝϦοτ <σϞ>؆୯ͳΧελϜίοϓ࡞ͷྫ
"45OPEFͱ͍ͬͨ༻ޠͷઆ໌ ύλʔϯϚονͷํ๏ ΧελϜίοϓͷܗ ςετͷॻ͖ํ BVUPDPSSFDUͷ࣮ <࣮ྫ>ࢀরܥΞΫγϣϯΛϦʔυϨϓϦΧʹ͚ΔΧελϜίοϓ ಋೖͷϞνϕʔγϣϯͱϝϦοτ ࣮ͷաఔ ಋೖͷํ๏ɺSVCPDPQ@UPEPZNMͷهड़ ޮՌ <࣮ྫ>Ϋϥε܈"͔ΒΫϥε܈#ͷݺͼग़͠Λېࢭ͢ΔΧελϜίοϓ ಋೖͷϞνϕʔγϣϯͱϝϦοτ ࣮ͷաఔ ಋೖͷํ๏ɺSVCPDPQ@UPEPZNMͷهड़ ޮՌ ·ͱΊ
ࠓͷ༰ ˠ ΧελϜίοϓಋೖͷϞνϕʔγϣϯͱϝϦοτ <σϞ>؆୯ͳΧελϜίοϓ࡞ͷྫ
"45OPEFͱ͍ͬͨ༻ޠͷઆ໌ ύλʔϯϚονͷํ๏ ΧελϜίοϓͷܗ ςετͷॻ͖ํ BVUPDPSSFDUͷ࣮ <࣮ྫ>ࢀরܥΞΫγϣϯΛϦʔυϨϓϦΧʹ͚ΔΧελϜίοϓ ಋೖͷϞνϕʔγϣϯͱϝϦοτ ࣮ͷաఔ ಋೖͷํ๏ɺSVCPDPQ@UPEPZNMͷهड़ ޮՌ <࣮ྫ>Ϋϥε܈"͔ΒΫϥε܈#ͷݺͼग़͠Λېࢭ͢ΔΧελϜίοϓ ಋೖͷϞνϕʔγϣϯͱϝϦοτ ࣮ͷաఔ ಋೖͷํ๏ɺSVCPDPQ@UPEPZNMͷهड़ ޮՌ ·ͱΊ
࡞Γ͍ͨΧελϜίοϓ w ࢀরܥͷΞΫγϣϯʹରͯ͠ɺଓઌΛϦʔυϨϓϦΧʹมߋ͢Δ ίʔϧόοΫͷॻ͖ΕΛܯࠂ͢ΔΧελϜίοϓ XJUI@SFBEFSͷఆٛ $POUSPMMFSͷྫ
ΧελϜίοϓ࡞ͷྲྀΕ ϑΝΠϧΛ࡞͢Δ ࣮͢Δ ςετΛॻ͘ ༗ޮԽ͢Δ
࣮ߦͯ͠ΈΔ BVUPDPSSFDUΛ࣮͢Δ
ᶃϑΝΠϧΛ࡞͢Δ w MJCSVCPDPQDPQMJOU࡞͢ΔΧελϜίοϓ໊SC
ᶄ࣮͢Δ w ΞϧΰϦζϜΛߟ͑Δ $POUSPMMFSͰ͋Δ͔Λ֬ೝ JOEFY͔TIPX͕ఆٛ͞Ε͍ͯΔ͔Λ֬ೝ BSPVOE@BDUJPOXJUI@SFBEFS POMZJ
ͷҾΛऔಘ औಘͨ͠J ͷҾʹJOEFY͔TIPX͕ͳ͚Εܯࠂ
ᶄ࣮͢Δ w ΞϧΰϦζϜΛߟ͑Δ $POUSPMMFSͰ͋Δ͔Λ֬ೝ JOEFY͔TIPX͕ఆٛ͞Ε͍ͯΔ͔Λ֬ೝ BSPVOE@BDUJPOXJUI@SFBEFS POMZJ
ͷҾΛऔಘ औಘͨ͠J ͷҾʹJOEFY͔TIPX͕ͳ͚Εܯࠂ
ᶄ$POUSPMMFSͰ͋Δ͔Λ֬ೝ w 3VCP$PQͰɺಛఆͷϊʔυʹରԠͨ͠ίʔϧόοΫ͕༻ҙ͞Ε͍ͯΔ w PO@TFOE OPEF w ϝιουݺͼग़͠ͷϊʔυʹରͯ͠ॲཧΛߦ͏ w
PO@DMBTT OPEF w Ϋϥεͷϊʔυʹରͯ͠ॲཧΛߦ͏
ᶄ$POUSPMMFSͰ͋Δ͔Λ֬ೝ w PO@DMBTT OPEF w Ϋϥεͷϊʔυʹରͯ͠ॲཧΛߦ͏
ᶄ࣮͢Δ w ΞϧΰϦζϜΛߟ͑Δ $POUSPMMFSͰ͋Δ͔Λ֬ೝ JOEFY͔TIPX͕ఆٛ͞Ε͍ͯΔ͔Λ֬ೝ BSPVOE@BDUJPOXJUI@SFBEFS POMZJ
ͷҾΛऔಘ औಘͨ͠J ͷҾʹJOEFY͔TIPX͕ͳ͚Εܯࠂ
ᶄJOEFY͔TIPX͕ఆٛ͞Ε͍ͯΔ͔Λ֬ೝ w ϊʔυύλʔϯ w "45ʹର͢Δਖ਼نදݱͷΑ͏ͳͷͰɺಛఆͷίʔυύλʔϯʹ Ϛον͢Δίʔυͷ୳ࡧऔಘ͕Ͱ͖Δ l3VCZzɹɹɹɹɹɹ TUSl3VCZz ɹɹˢɹɹɹɹɹɹɹˢɹˢ
3VCZͷίʔυɹϊʔυͷछྨɹ l3VCZzSFWFSTFɹɹ TFOE TUSlIPHFz SFWFSTF ɹɹˢɹɹɹɹɹɹɹɹɹɹɹˢ 3VCZͷίʔυɹɹɹɹɹɹɹ"45
ᶄJOEFY͔TIPX͕ఆٛ͞Ε͍ͯΔ͔Λ֬ೝ EFG@OPEF@TFBSDI ɹɹ୳ࡧϝιουΛఆ͍ٛͯ͠Δɻ ɹɹύλʔϯʹϚον͢ΔϊʔυΛ୳ࡧ͠ɺ ɹɹϚονͨ͠ϊʔυΛฦ͢
ᶄ࣮͢Δ w ΞϧΰϦζϜΛߟ͑Δ $POUSPMMFSͰ͋Δ͔Λ֬ೝ JOEFY͔TIPX͕ఆٛ͞Ε͍ͯΔ͔Λ֬ೝ BSPVOE@BDUJPOXJUI@SFBEFS POMZJ
ͷҾΛऔಘ औಘͨ͠J ͷҾʹJOEFY͔TIPX͕ͳ͚Εܯࠂ
ᶄXJUI@SFBEFS POMZJ ͷҾΛऔಘ w ϊʔυύλʔϯͰऔಘ OJM Ϩγʔό͕ଘࡏ͠ͳ͍ BSPVOE@BDUJPOϝιου໊͕BSPVOE@BDUJPO BSSBZʜҙͷཁૉͷྻ
Ұக͢ΔϊʔυΛΩϟϓνϟ
ᶄ࣮͢Δ w ΞϧΰϦζϜΛߟ͑Δ $POUSPMMFSͰ͋Δ͔Λ֬ೝ JOEFY͔TIPX͕ఆٛ͞Ε͍ͯΔ͔Λ֬ೝ BSPVOE@BDUJPOXJUI@SFBEFS POMZJ
ͷҾΛऔಘ औಘͨ͠J ͷҾʹJOEFY͔TIPX͕ͳ͚Εܯࠂ
w BEE@PGGFODFͰܯࠂΛग़͢ ᶄҾʹJOEFY͔TIPX͕ͳ͚Εܯࠂ
w ࠷ऴతͳܗ ᶄҾʹJOEFY͔TIPX͕ͳ͚Εܯࠂ
ᶅςετΛॻ͘ w ܯࠂΛग़͞ͳ͍ͱ͖
ᶅςετΛॻ͘ w ܯࠂΛग़͢ͱ͖
ᶅςετΛॻ͘ w ςετҰཡ
ᶆ༗ޮԽͯ͠ΈΔ w SVCPDPQZNMΛमਖ਼
ᶇ࣮ߦͯ͠ΈΔ 3VCZ-41Λಋೖ͍ͯ͠ΔͨΊɺ ΤσΟλ্Ͱܯࠂ͕ग़Δ λʔϛφϧ্Ͱ࣮ߦ
ᶈBVUPDPSSFDUΛ࣮͢Δ w BEE@PGGFODFʹϒϩοΫΛ༩͑Δ͜ͱʹΑͬͯBVUPDPSSFDUΛ࣮ݱͰ͖Δ $PSSFDUBCMFʹͳͬͨ
·ͱΊ ੩తղੳͰղܾͰ͖ΔΑ͏ͳಛ༗ͷϧʔϧ ΧελϜίοϓͰղܾ͠Α͏ʂ