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
About Rails ConnectionPool
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Takahiro Uchiyama
July 22, 2020
Technology
220
0
Share
About Rails ConnectionPool
Quipper社内の「ゆるいRuby LT会 Vol.1」でやった資料です。
Takahiro Uchiyama
July 22, 2020
More Decks by Takahiro Uchiyama
See All by Takahiro Uchiyama
日々の意思決定の積み重ねを記録するアーキテクチャ・デシジョン・レコード / Architectural Decision Records
highwide
30
21k
停止性問題と数 / Halting problem and number
highwide
0
1.5k
GraphQLスキーマ設計の悩みどころ/My concerns about GraphQL schema design
highwide
0
2k
How about today's coffee?
highwide
0
500
How to choose "best of the best"
highwide
1
800
A question about private method testing
highwide
0
3.6k
A life-changing innovation for my work-style by IoT
highwide
0
690
a-code-to-rhyme
highwide
3
720
よちがや.rb案内スライド
highwide
1
600
Other Decks in Technology
See All in Technology
インターネットのガバナンスと応用 / Internet Governance and Applications
ks91
PRO
0
110
QAエンジニアはどうやって プロダクト議論の場に入れるのか?
moritamasami
2
390
(きっとたぶん)人材育成や教育のような何かの話
sejima
0
610
GKE Agent SandboxでAIが生成したコードを 安全に実行してみた
lamaglama39
0
190
『生成AI時代のクレデンシャルとパーミッション設計 — Claude Code を起点に』の執筆企画
takuros
2
2.2k
Sociotechnical Architecture Reviews: Understanding Teams, not just Artefacts
ewolff
1
130
生成AIが変える SaaS の競争原理と弁護士ドットコムのプロダクト戦略
bengo4com
1
3.5k
Oracle Cloud Infrastructure:2026年4月度サービス・アップデート
oracle4engineer
PRO
0
340
雑談は、センサーだった
bitkey
PRO
2
200
GitHub Copilot Dev Days
tomokusaba
0
150
SLI/SLO、「完全に理解した」から「チョットデキル」へ
maruloop
1
110
生成AIはソフトウェア開発の革命か、ソフトウェア工学の宿題再提出なのか -ソフトウェア品質特性の追加提案-
kyonmm
PRO
2
840
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.4k
Building AI with AI
inesmontani
PRO
1
960
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Automating Front-end Workflow
addyosmani
1370
200k
How to train your dragon (web standard)
notwaldorf
97
6.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Optimising Largest Contentful Paint
csswizardry
37
3.7k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
370
Paper Plane (Part 1)
katiecoart
PRO
0
7.1k
Are puppies a ranking factor?
jonoalderson
1
3.4k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
530
Transcript
Նͩʂ ϓʔϧͩʂ 3VCZͰ-5ͩʂʂʂ Նͩʂ ϓʔϧͩʂ 3VCZͰ-5ͩʂʂʂ 2VJQQFSࣾΏΔ͍3VCZ-5ձ7PM !IJHIXJEF
ίωΫγϣϯ ϓʔϧͷ ࣮ΛͬͯΈͨ ίωΫγϣϯ ϓʔϧͷ ࣮ΛͬͯΈͨ 2VJQQFSࣾΏΔ͍3VCZ-5ձ7PM !IJHIXJEF ͱ͍͏Θ͚Ͱ
"CPVUNF BOEUPEBZTUIFNF ✴ ݄2VJQQFSʹKPJO ✴ ίʔνϯάνʔϜͰ8FC։ൃΛ͍ͬͯΔ ✴ ͜ͳ͍ͩͷVKJIJTBษڧձͰͷGPSLUISFBEͷઆ໌͕େมΘ͔Γ͔ͬͨ͢ͷͰɺۀʹͭͳ͕ ΔܗͰ͏গ͠۷ΓԼ͛ͯΈ͍ͨͱࢥͬͨ ✴
✴ 3BJMTͷ$POOFDUJPO1PPM5ISFBEͱ͕ؔ͋Δͱ͍͏ͳΜͱͳ͘ฉ͍ͨ͜ͱ͕͋Γɺ͜ ΕΛ۷ΓԼ͛Δͷʮࣗʹͱͬͯ৽نੑʯ͕͋Γͦ͏
ͱ͍͏͍ܰؾ࣋ͪͰ࢝ΊͨΒ ऩर͕͔ͭͳ͘ͳͬͨͷͰ ੜஆ͔͍ͰݟकͬͯΒ͑Δͱ͏Ε͍͠Ͱ͢ ˞͜ͷϖʔδൃදલʹͲ͏͢Μͩ͜Εͬͯؾ࣋ͪʹͳͬͯՃ͠·ͨ͠
Foo.find(1) ௐࠪΛελʔτ͢Δ্Ͱͷ࠷ॳͷϞνϕʔγϣϯ ࠓ3BJMTͷ͜ͷཪଆͰ ίωΫγϣϯ͕Ͳ͏ΘΕ͍͔ͯ͘ίʔυΛ͍ͬͯͧ͘ʂ
ͱ͜Ζ͕ʮ'PPGJOEʯͰίωΫγϣϯϓʔϧ͕ Ͳ͏ΘΕΔ͔ݟΔલʹ 3BJMTΛىಈͨ͠ͱ͜Ζ͔Β͍ͬͯ͘ඞཁ͕͋Δͱɺ ࠓճֶΜͰ͍ͯΘ͔ͬͨɻ
SBJMTىಈ࣌ʹBDUJWFSFDPSESBJMUJF͕SFRVJSF͞ΕΔ IUUQTSBJMTHVJEFTKQJOJUJBMJ[BUJPOIUNM
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@IBOEMJOHSC DPOGJHͷಡΈࠐΈׂѪɻ
BDUJWFSFDPSEMJCBDUJWF@SFDPSESBJMUJFSC ·ͣ͜͜ͰFTUBCMJTI@DPOOFDUJPO͕ݺΕΔɻ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@IBOEMJOHSC ͜͜ͷFTUBCMJTI@DPOOFDUJPO͕ݺΕΔɻ
DPOOFDUJPOͷઃఆΛಡΈࠐΜͰ
ʮDPOOFDUJPO@IBOEMFSʯͷɺFTUBCMJTI@DPOOFDUJPOΛݺͿɻ DPOOFDUJPO@IBOEMFSͬͯԿʁ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPSFSC ࠓͷ5ISFBEʹઃఆ͞Ε͍ͯΕɺͦͷDPOODUJPO@IBOEMFSΛ͏ɻ ·ͩઃఆ͞Εͯͳ͔ͬͨΒɺ$POOFDUJPO"EBQUFST$POOFDUJPO)BOEMFSΛ5ISFBEʹొ͓ͯ͘͠ɻ $POOFDUJPO)BOEMFS5ISFBEʹͭͷΑ͏ͩɻ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTSC $POODFDUJPO)BOEMFSDPOOFDUJPO@QPPMSCʹ͋Γͦ͏ͩ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC ࠷ऴతʹݺΕΔFTUBCMJTI@DPOOFDUJPO͜Εɻ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTDPOOFDUJPO@TQFDJGJDBUJPOSC EBUBCBTFZNMͷΛݩʹ࡞ͬͨDPOGJH͔Βɺ$POOFDUJPO4QFDJGJDBUJPOΫϥεΛฦ͢
طʹଘࡏ͍ͯ͠ΔDPOOFDUJPOΛSFNPWF͢Δɻ ˞ͨͩ͠ࠓͬͯΔͷ3BJMTͷॳճىಈ࣌ͳͷͰׂѪɻ
"DUJWF4VQQPSU/PUJGJDBUJPOTJOTUSVNFOUFSͱʁ
IUUQTSBJMTHVJEFTKQBDUJWF@TVQQPSU@JOTUSVNFOUBUJPOIUNM
DPOOFDUJPOBDUJWF@SFDPSEͱ͍͏໊લͰ֎͔ΒϑοΫͰ͖ΔΠϕϯτΛ࡞͍ͬͯΔ
PXOFS@UP@QPPMͱʁ
!PXOFS@UP@QPPMJOJUJBMJ[F࣌ʹ࡞ΒΕ͍ͯΔ BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC
IUUQTXXXSVCZEPDJOGPHFNTDPODVSSFOUSVCZ$PODVSSFOU.BQ DPODVSSFOUSVCZͷ.BQͷΑ͏ͩɻ
TQFDOBNFΛʮPXOFSʯͱߟ͑ɺͦΕʹରԠ͢Δ $POOFDUJPO"EBQUFST$POOFDUJPO1PPMΛಥͬࠐΜͰ͍Δ͜ͱ͕Θ͔Δɻ
IUUQTBQJSVCZPOSBJMTPSH ͜͜ͰυΩϡϝϯτΛݟ͓ͯ͘ɻ
ᐌ͘ ✴ ίωΫγϣϯϓʔϧɺσʔλϕʔεଓΛߦ͏εϨουͱಉظ͢Δ ✴ ͦΕͧΕͷεϨουσʔλϕʔεͷίωΫγϣϯΛίωΫγϣϯϓʔϧ͔ΒνΣοΫΞ τ͠ɺίωΫγϣϯΛ͍ɺ͍ऴΘͬͨΒνΣοΫΠϯ͢Δ ฦ͢ ɻ ✴ $POOFDUJPO1PPMશʹUISFBETBGFͰɺҰͭͷίωΫγϣϯͭͷεϨου͔Βಉ࣌ʹ
͑ͳ͍ɻ ✴ ίωΫγϣϯΑΓεϨου͕ଟ͍ͱ͖ʹɺεϨου্͕ݶΛ͑ͯίωΫγϣϯΛ νΣοΫΞτ͠Α͏ͱͨ͠ͱ͖ɺ$POOFDUJPO1PPM5ISFBE͕ίωΫγϣϯΛฦͯ͘͠ ΔͷΛͭ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC
ίωΫγϣϯΛΩϟογϡ͢Δ͍ΕͷΛ࡞͓ͬͯ͘
ίωΫγϣϯऔಘͪ ͷΩϡʔΛ࡞͓ͬͯ͘
None
IUUQTBQJSVCZPOSBJMTPSHDMBTTFT"DUJWF3FDPSE$POOFDUJPO"EBQUFST$POOFDUJPO1PPM3FBQFSIUNM EBUBCBTFZNMͰઃఆ͞ΕͨGSFRVFODZͷඵ ͘͠σϑΥϧτͷඵ ͝ͱʹ ίωΫγϣϯϓʔϧͷGMVTIͱSFBQΛݺΜͰ͍Δ
None
None
None
None
✴ EBUBCBTFZNM͔ΒಘΒΕͨTQFDΛͱʹ$POOFDUJPO1PPMΛ࡞͍ͬͯΔ ✴ $POOFDUJPO1PPMࣗମ࡞Δͷͷɺ·ͩ$POOFDUJPOࣗମཱ͍֬ͯ͠ͳ͍͜ͱ͕Θ͔Δ "DUJWF3FDPSE$POOFDUJPO"EBQUFST$POODFUJPO)BOEMFSFTUBCMJTI@DPOOFDUJPO
Foo.find(1) Α͏͘3BJMT͕ىಈͰ͖ͨͷͰ͍ͭ͜ͷॲཧΛ͑Δɻ
BDUJWFSFDPSEMJCBDUJWF@SFDPSECBTFSC
BDUJWFSFDPSEMJCBDUJWF@SFDPSECBTFSC
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPSFSC
BDUJWFSFDPSEMJCBDUJWF@SFDPSECBTFSC
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@IBOEMJOHSC ͜͜ͷDPOOFDUJPO@IBOEMFS͖ͬ͞ݟͨΑ͏ʹˣʹ͋Δ BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPSFSC
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC QPPMΛऔಘͯ͠ɺQPPM͔ΒDPOOFDUJPOΛऔಘ͍ͯ͠Δͷ͕Θ͔Δ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC ίωΫγϣϯ͕Ωϟογϡ͞Ε͍ͯΔ߹ͦΕΛར༻͠ɺͳ͚ΕDIFDLPVUͯ͘͠Δ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC Ωϡʔʹ͕͍ͪΕͦΕΛ͍ɺͦ͏Ͱͳ͚Εɺ৽͍͠ίωΫγϣϯΛνΣοΫΞτ͢Δ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC OFX@DPOOFDUJPOࣗମɺ֤%#ͷBEBQUFS͔ΒಘΒΕΔ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPOOFDUJPO@BEBQUFSTBCTUSBDUDPOOFDUJPO@QPPMSC 5ISFBEಉظͷதͰɺ৽͍͠DPOOFDUJPO͕QPPMʹొ͞ΕΔ
BDUJWFSFDPSEMJCBDUJWF@SFDPSEDPSFSC ͱ͍͏Θ͚ͰɺDPOFODUJPOऔಘͷཱྀ͍͕ऴΘΓɺGJOEͰ͏ͨΊͷDPOOFDUJPO͕֬อͰ͖ͨʂ
ײ ✴ ࣮ɺ·ͱʹ3BJMTͷίʔυΛಡΜͰ͍͘ܦݧ͕͋·Γͳ͔ͬͨͷͰָ͋ͬͨ͘͠ ✴ εϥΠυʹసه͠ͳ͕ΒίʔυϦʔσΟϯά͍ͯ͘͠ͷɺҙ֎ͱϝϞϦ͕εϥΠυʹ ΔͷͰͪΐͬͱ͚ͩศར ✴ $POOFDUJPO1PPMͷ2VFVFͱ3FBQFSपΓͷཧղ͕·ͩઙ͍ ✴ 3BJMTͷ"84ͷ"VSPSBͷϑΣΠϧΦʔόʔ$POOFDUJPO1PPMपΓͰ૬ੑ͕ѱ͍ͱ͍͏ʹͭ
͍ͯฉ͍ͨ͜ͱ͕͋Γɺͦͷ͋ͨΓͷݟ͕ࣝਂ·ͬͨ ✴ ࢀߟIUUQNBUTVLB[IBUFOBCMPHDPNFOUSZ
-FUTEJWFJOUPUIFQPPM 5IBOLT