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
go in to microservices(wip)
Search
Yoshiori SHOJI
September 26, 2015
Technology
5.9k
28
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
go in to microservices(wip)
Yoshiori SHOJI
September 26, 2015
More Decks by Yoshiori SHOJI
See All by Yoshiori SHOJI
なぜThrottleではなくDebounceだったのか? 700並列リクエストと戦うサーバーサイド実装のすべて
yoshiori
13
7.4k
クライアントサイドでよく使われる Debounce処理 をサーバサイドで3回実装した話
yoshiori
2
1.1k
ソートできるUUID v7をJavaで使うときの話
yoshiori
8
8.2k
Go Down Rockin'
yoshiori
31
19k
テストデータを貯めて感じたこと
yoshiori
12
4.5k
エンジニアリング x US 海外とのコラボレーション
yoshiori
3
2.2k
未完成な技術と歩む道のりでの 試行錯誤
yoshiori
0
230
DevOps, Immutable Infrastructure, Microservices and Chaos Engineering
yoshiori
13
2.5k
Change the recipe's world
yoshiori
3
1.5k
Other Decks in Technology
See All in Technology
壊して学ぶAWS CDK: そのcdk deployで消えるもの、残るもの
k_adachi_01
1
410
アップデートで何が変わった?デモで学んで使いこなすIBM Bob2.0
muehara
0
130
Claude Code公式skillで 自分の仕事を少しずつ手放そう!(Claude Code開発ノウハウ大公開スペシャル by クラスメソッド)
kaym
1
490
インフラと開発の垣根を超えていき!〜元AWSインフラエンジニアがAWS開発で奮闘している話〜
hatahata021
3
300
実践!既存 Project への AI-Driven Development 適用〜 一ヶ月で Project 唯一のフロントエンドエンジニアを作り出せ〜
lycorptech_jp
PRO
0
230
あなたの『Site』はどこですか? — xREという考え方
miyamu
0
1.2k
変更し続けられるシステムをどう保つか — AI時代のSSoTという設計原則
kawauso
0
130
GoでCコンパイラを作った話
repunit
0
110
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
14
2.1k
AIレビューはどこまで任せられるのか?自動化と人が背負うレビューの境界
sansantech
PRO
3
1.1k
最適な自走を最小限の支援で — M&Aで拡大する組織で少人数SREが挑んだ1年 / SRE NEXT 2026
genda
0
1.5k
ゴールデンパスは敷いただけでは道にならない ─ 企画部門のエンジニアが技術標準を事業価値に変えるまで
mhrtech
1
220
Featured
See All Featured
Ethics towards AI in product and experience design
skipperchong
2
330
A better future with KSS
kneath
240
18k
Paper Plane (Part 1)
katiecoart
PRO
1
9.7k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
300
GitHub's CSS Performance
jonrohan
1033
470k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
210
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Accessibility Awareness
sabderemane
1
160
Making Projects Easy
brettharned
120
6.7k
The Cult of Friendly URLs
andyhume
79
6.9k
Faster Mobile Websites
deanohume
310
32k
Transcript
ʲੈք࠷େڃʳΫοΫύουͷ .JDSPTFSWJDFTԽʲ8*1ʳ :PTIJPSJ4IPKJ IUUQTXXXqJDLSDPNQIPUPTHVZTJF
None
レベル: じんしゅ: ヨシオリ 40 エンジニア
レベル: じんしゅ: ヨシオリ 40 エンジニア ▶ アカウント
レベル: じんしゅ: ヨシオリ 40 エンジニア ▶ アカウント ギットハブ: ツイッター: yoshiori
@yoshiori
レベル: じんしゅ: ヨシオリ 40 エンジニア ▶ アカウント ギットハブ: ツイッター: yoshiori
@yoshiori ▶ コミュニティ
レベル: じんしゅ: ヨシオリ 40 エンジニア ▶ アカウント ギットハブ: ツイッター: yoshiori
@yoshiori ▶ コミュニティ java-ja: Asakusa.rb: しゅさいしゃ ゆうれいぶいん
None
.JDSPTFSWJDFT IUUQNBSUJOGPXMFSDPNBSUJDMFTNJDSPTFSWJDFTIUNM ҰຕؠʢϞϊϦγοΫʣʹ࡞ΔͷͰͳ͘ ෳͷܰྔͳαʔϏεΛΈ߹Θͤͯ࡞Δ ͱ͍͏Ξϓϩʔν
.JDSPTFSWJDFT IUUQNBSUJOGPXMFSDPNBSUJDMFTNJDSPTFSWJDFTIUNM ҰຕؠʢϞϊϦγοΫʣʹ࡞ΔͷͰͳ͘ ෳͷܰྔͳαʔϏεΛΈ߹Θͤͯ࡞Δ ͱ͍͏Ξϓϩʔν 細かく説明してると 時間無くなるので ググって
None
.JDSPTFSWJDF1SFNJVN IUUQNBSUJOGPXMFSDPNCMJLJ.JDSPTFSWJDF1SFNJVNIUNM ຆͲͷγεςϜɺ ୯ҰͷϞϊϦγοΫΞϓϦέʔγϣϯͱͯ͠ ߏங͞ΕΔ͖Ͱ͢ɻ
None
ͭ·Γ΄ͱΜͲ ͷγεςϜϚΠ ΫϩαʔϏεԽ ͖͢Ͱͳ͍
None
ͪΐͬͱ͚ͩ ͬͯ
ੈք࠷େڃͷ ϞϊϦγοΫ3BJMT αʔϏε IUUQTTQFBLFSEFDLDPNB@NBUTVEBUIFSFDJQFGPSUIF XPSMETMBSHFTUSBJMTNPOPMJUI
ϑΝϥʔʹઌۦ͚ͯ ʮ͜Μ͚ͩσΧΠαΠτͰϞ ϊϦγοΫʹ͍͚Δͷʹຊʹ ͓લΒNJDSPTFSWJTFTඞཁ ͳͷʁʯͱ͍͔͚Δ
࣮ࡍ ͲΜͳΜͳͷ͔
SBLF TUBUT +----------------------+-------+-------+---------+---------+-----+-------+ | Name | Lines | LOC
| Classes | Methods | M/C | LOC/M | +----------------------+-------+-------+---------+---------+-----+-------+ | Controllers | 51762 | 41676 | 554 | 4170 | 7 | 7 | | Helpers | 15863 | 12986 | 18 | 1478 | 82 | 6 | | Models | 104034 | 81971 | 1851 | 9241 | 4 | 6 | | Mailers | 2150 | 1729 | 42 | 203 | 4 | 6 | | Workers | 639 | 540 | 20 | 31 | 1 | 15 | | Chanko units | 10341 | 8587 | 8 | 229 | 28 | 35 | | Libraries | 50661 | 41872 | 626 | 3790 | 6 | 9 | | Feature specs | 49901 | 40916 | 0 | 205 | 0 | 197 | | Request specs | 43437 | 37448 | 0 | 19 | 0 | 1968 | | Routing specs | 627 | 505 | 0 | 0 | 0 | 0 | | Controller specs | 63678 | 52586 | 6 | 128 | 21 | 408 | | Helper specs | 81289 | 67277 | 3 | 69 | 23 | 973 | | Model specs | 156941 | 129837 | 5 | 124 | 24 | 1045 | | Worker specs | 901 | 747 | 0 | 1 | 0 | 745 | | Chanko unit specs | 11476 | 9210 | 0 | 12 | 0 | 765 | | Library specs | 24911 | 20824 | 26 | 116 | 4 | 177 | +----------------------+-------+-------+---------+---------+-----+-------+ | Total | 668611 | 548711 | 3159 | 19816 | 6 | 25 | +----------------------+-------+-------+---------+---------+-----+-------+ Code LOC: 189361 Test LOC: 359350 Code to Test Ratio: 1:1.9
ेͰ͔͍
͜Ε͚ͩσΧΠ ͷΛΓ͚Δͷ ͳ͔ͳ͔ ܦݧͰ͖ͳ͍
ྫDPPLQBEྉཧಈը
Ͳ͏Γ͚Δ͔ IUUQTXXXqJDLSDPNQIPUPTKF⒎SFZXX
ॎʹΔ PS ԣʹΔ
DPPLQBEDPN ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϞϊϦγοΫͳߏ SFDJQFT VTFS@LPOEBUFT
LJUDIFOT DBUFHPSZ IPOPS@SFDJQF WJEFPT
DPPLQBEDPN ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ॎʹΔ SFDJQFT VTFS@LPOEBUFT
LJUDIFOT DBUFHPSZ IPOPS@SFDJQF WJEFPT ϛυϧΣΞ ϛυϧΣΞ
DPPLQBEDPN ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ϛυϧΣΞ ͜͜ SFDJQFT VTFS@LPOEBUFT
LJUDIFOT DBUFHPSZ IPOPS@SFDJQF WJEFPT ԣʹΔ
Θ͔Γʹ͍͘ͷͰ ۩ମతʹݴ͏ͱ ಈըΤϯίʔυ ৴γεςϜ
IUUQTTQFBLFSEFDLDPNZPTIJPSJIBQQZWJEFPUSBOTDPEJOHXJUIFMBTUJDUSBOTDPEFS Τϯίʔυ৴γεςϜͷ ৄ͍͠ίνϥ
Γ͚Δ w ॎʹΔ w ϏδωεྖҬʹΑͬͯΓ͚Δ w جຊ͜ͷܗ w ԣʹΔ w
ػೳͰΓ͚Δ w ಛఆͷྖҬʹಛԽͨ͠&WFSZUIJOHBTB4FSWJDFతͳͷ
ڞ௨ݴޠ IUUQTXXXqJDLSDPNQIPUPT!/
(BSBHF w 3BJMTHFNJpFEQMVHJOT w 3&45GVM)ZQFSNFEJB"1* w 3&45GVMͰ͋Γɺ)ZQFSNFEJBʹݱ࣮తͳϨϕϧͰରԠ w $PPLQBEͷαʔϏεؒ࿈ܞ͜ΕΛϕʔεʹΓऔΓͯ͠Δ w
αʔόಉ࢜ɺJ04ɺ"OESPJEͳͲͷΞϓϦͱͷ࿈ܞ w 044ͱͯ͠ެ։ͯ͋͠Δʢ3VCZͷΫϥΠΞϯτʣ w IUUQTHJUIVCDPNDPPLQBEHBSBHF w IUUQTHJUIVCDPNDPPLQBEHBSBHF@DMJFOU
IUUQTXXXqJDLSDPNQIPUPTDISJTUJBOIBVHFO ԣʹΔ
&WFSZUIJOHBTB4FSWJDF w ଞͷαʔϏεͰ͑ΔΑ͏ʹ࠷ॳ͔Βߟ͓͑ͯ͘ w ͨͱ͑ಈը৴γεςϜDPPLQBE͘Β͠ͷ͖΄Μ ಉ͡ΤϯυϙΠϯτΛୟ͍͍ͯΔ w αʔϏε͝ͱʹཱͯΔΑ͏ʹ͠ͳ͍ w εέʔϧ͍ͤ͢͞
w σϓϩΠ։ൃڥγϯϓϧʹอͯΔ
IUUQTXXXqJDLSDPNQIPUPTSPCCO ॎʹΔ
IUUQTDPPLQBEWJEFPKQ
࣮ࡍͬͯΈΔͱ݁ߏେมͩͬͨ wυϝΠϯͱΫοΩʔͷ wΩϟογϡઓུͷ
υϝΠϯͱΫοΩʔͷ w શಉҰυϝΠϯ w DPPLQBEDPNWJEFPT w αϒυϝΠϯ w WJEFPTDPPLQBEDPN w
શผυϝΠϯ w DPPLQBEWJEFPKQ
શಉҰυϝΠϯ w ΫοΩʔશʹڞ௨ w ͳͷͰͦΕͧΕผͷΞϓϦέʔγϣϯͰ ಉ͡ηογϣϯΫοΩʔΛ͏Α͏ͳ͜ͱʹͳΓ͔Ͷͳ͍ ͷͰҙ͕ඞཁ w DTTJNBHFͷ1BUIҙ w
DPPLQBEຊମͷΞϓϦ͕͏JNBHFTMPHPQOH ͱWJEFP͕͏JNBHFTMPHPQOH͕ಉ͡ͷʹͳ Δ
αϒυϝΠϯ w ΫοΩʔҰ෦ڞ༗ w DPPLQBEDPNͳͲʹ͠ͳ͚ΕجຊDPPLJF͕ಉ ҰʹͳΔ͜ͱͳ͍ w ্هΛར༻͢ΕϩάΠϯঢ়ଶͷҾ͖ܧ͗ͳͲൺֱతʹ ؆୯ DPPLQBEDPNʹ࣋ͨͤΕྑ͍ʣ
w DTTJNBHFͷ1BUIผʹͳΔ
શผυϝΠϯ w ΫοΩʔશผ w ڞ༗Խ͢Δ͕͢ͳ͍ w ϩάΠϯͷҾ͖ܧ͗ͱ͔ग़དྷͳ͍ w DTTJNBHFͷ1BUIશʹผʹͳΔ
υϝΠϯͱΫοΩʔͷ ͜ΕΒٕज़తͳΕΔ͜ͱɺ Εͳ͍͜ͱΛ౿·͑ͯɺ 4&0ͳͲߟ͑ ͲͷܗࣜͰߦ͔͘ΛܾΊΔ
Ωϟογϡઓུͷ େલఏͱͯ͠ "1*ͷΤϯυϙΠϯτ ͳΔ͘γϯϓϧʹ ͓͖͍ͯͨ͠
Ωϟογϡઓུͷ w ୯ҰϦιʔε"1*ʹ͓ͯ͘͠ͱ w NTͰฦ͢ͱͯ͠ݸͰNT w )551ͷίωΫγϣϯίετߴ͍ w ͦͷ··NFNDBDIFEʹΩϟογϡͯ͠ճ͍ ߹ΘͤมΘΒͳ͍
ྫ͑ಈըτοϓϖʔδͰݸͷϨγϐΛհ͍ͯͨ͠߹
Ωϟογϡઓུͷ w ෳಉ͍࣌߹Θͤ 42-ͷJO۟ͷΑ͏ʹJEෳͤΔ Ͱ͖ΔΑ͏ʹ͢Δͱ w ݸ͍߹Θͤͯݸ͔͠Ұக͠ͳ͔ͬͨ߹ɺΤϥʔ Λฦ͖͔͢औಘͰ͖͚ͨͩฦ͖͔͢ w ͍߹ΘͤଆݸʹͳΔ·Ͱ܁Γฦ͍͠߹ΘͤΔ
͖͔ w ͦͷෳΛҰؾʹΩϟογϡ͖͔͢ w ॲཧ͕ෳࡶʹͳΔ
Ωϟογϡઓུͷ ͔͜͠Ε͕ଟஈʹͳΔ͜ͱ͋Δ DPPLQBEDPN DPPLQBEWJEFPKQ ಈը৴αʔό τοϓʹදࣔ͢ΔҰཡଷ Ұཡͷಈըϝλσʔλଷ
Ωϟογϡઓུͷ ࠓͷͱ͜Ζ7BSOJTIͰ ͦͦΞϓϦέʔγϣϯαʔόʹདྷΔલʹฦ͢ ͔ ୯ҰϦιʔε"1*ΛNFNDBDIFEʹೖΕΔ ͷΛ͍͚͍ͯΔ͕ ·ͩ·ͩߟ͑Δ༨͋Δ
IUUQTXXXqJDLSDPNQIPUPTKBLFSVTU (BSBHFͷଞʹࣾͰ ϥΠϒϥϦԽ͞ΕͨΓ ͯ͠ڞ༗͞ΕͯΔͷ
w 17BVEJUܥ ͷϩάऩू w ΧελϜͳ औಘγεςϜ w ϩάΠϯपΓ w ϔομϑομ
w ࠂ w σϓϩΠपΓ w $*पΓ w Τϥʔूܭ ڞ༗
࣮ࡍΓ͚ͯΈͯ
ͬͯΈͯΑ͔ͬͨ w ߏͳͲ͕γϯϓϧʹͳͬͨ w ୯७ʹؾ͍͍࣋ͪ w WJFXͷϨϯμϦϯά͕ૣ͘ͳͬͨ w ࢥ͍ͬͨࢪࡦΛೖΕ͍͢ w
࣮ࡍʹࣈʹݱΕ͍ͯΔ
ͨͱ͑QKBY
ͨͱ͑QKBY
IUUQTEFWFMPQFSBQQMFDPNMJCSBSZTBGBSJEPDVNFOUBUJPO"VEJP7JEFP$PODFQUVBM 6TJOH@)5.-@"VEJP@7JEFP%FWJDF4QFDJpD$POTJEFSBUJPOT%FWJDF4QFDJpD$POTJEFSBUJPOTIUNM εϚϑΥͷϒϥβϢʔβʔΠϕϯτ ʢUPVDIDMJDLʣҎ֎Ͱ ϝσΟΞΛ࠶ੜ͢Δ͜ͱग़དྷͳ͍ POMPBEͱ͔ͷΠϕϯτͰࣗಈ࠶ੜΛ͢Δ͜ͱ ग़དྷͳ͍
࣮ී௨ͷϦϯΫͰͳ͍ λοϓ͢Δͱ QKBYͰը໘Λॻ͖͑ͳ ͕ΒಈըΛ࠶ੜͯ͠Δ ը໘ભҠ͍ͯ͠ͳ͍
Γ͚ͯWJFX ͷཧΛࣗͨͪ ͚ͩͰͰ͖ΔΑ͏ ʹͳͬͨͷͰ࣮ݱ Ͱ͖ͨ
Γ͚ͯWJFX ͷཧΛࣗͨͪ ͚ͩͰͰ͖ΔΑ͏ ʹͳͬͨͷͰ࣮ݱ Ͱ͖ͨ
Τϥʔ͕ൃੜͨ͠ΒࣗಈతʹJTTVFTͬͯ ͘Εͯϝϯόʔͷ୭͔ʹΞαΠϯͯ͘͠ΕΔ
Τϥʔूܭ4FOUSZͰ͍ͬͯ ΔͷͰQMVHJOॻ͍ͯެ։ͯ͋͠Δ IUUQTHJUIVCDPNZPTIJPSJTFOUSZOPUJGZHJUIVCJTTVFT
ΫοΫύουͷ044ͱͷؔ ࡞ͬͨͷجຊ044Ͱυϯυϯެ։ͯ͠Δ w DPPLQBEDIBOLP w ϓϩτλΠϓ։ൃ༻ͷϓϥάΠϯ w DPPLQBESSSTQFD w ࢄςετ
w DPPLQBELBHF w TIBEPXQSPYZTFSWF
w FBHMFUNUTXJUDI@QPJOU w 3%#38TQMJUUJOH w XJOFCBSSFMSJEHFQPM w εΩʔϚཧπʔϧ w TPSBINBNJZB
w ߴσϓϩΠ w FBHMFUNUGBNM w IBNߴ൛ w ࡉ͔͍ͷ͑ΒΕͣʜʜ
ͪΖΜ3VCZ3BJMTʹ ίϯτϦϏϡʔτͯ͠Δ ͪΐͬ͜ͱͯͨ͠Γ͢Δ
Ͱ
+----------------------+-------+-------+---------+---------+-----+-------+ | Name | Lines | LOC | Classes |
Methods | M/C | LOC/M | +----------------------+-------+-------+---------+---------+-----+-------+ | Controllers | 51762 | 41676 | 554 | 4170 | 7 | 7 | | Helpers | 15863 | 12986 | 18 | 1478 | 82 | 6 | | Models | 104034 | 81971 | 1851 | 9241 | 4 | 6 | | Mailers | 2150 | 1729 | 42 | 203 | 4 | 6 | | Workers | 639 | 540 | 20 | 31 | 1 | 15 | | Chanko units | 10341 | 8587 | 8 | 229 | 28 | 35 | | Libraries | 50661 | 41872 | 626 | 3790 | 6 | 9 | | Feature specs | 49901 | 40916 | 0 | 205 | 0 | 197 | | Request specs | 43437 | 37448 | 0 | 19 | 0 | 1968 | | Routing specs | 627 | 505 | 0 | 0 | 0 | 0 | | Controller specs | 63678 | 52586 | 6 | 128 | 21 | 408 | | Helper specs | 81289 | 67277 | 3 | 69 | 23 | 973 | | Model specs | 156941 | 129837 | 5 | 124 | 24 | 1045 | | Worker specs | 901 | 747 | 0 | 1 | 0 | 745 | | Chanko unit specs | 11476 | 9210 | 0 | 12 | 0 | 765 | | Library specs | 24911 | 20824 | 26 | 116 | 4 | 177 | +----------------------+-------+-------+---------+---------+-----+-------+ | Total | 668611 | 548711 | 3159 | 19816 | 6 | 25 | +----------------------+-------+-------+---------+---------+-----+-------+ Code LOC: 189361 Test LOC: 359350 Code to Test Ratio: 1:1.9 .PEFMTDMBTT
+----------------------+-------+-------+---------+---------+-----+-------+ | Name | Lines | LOC | Classes |
Methods | M/C | LOC/M | +----------------------+-------+-------+---------+---------+-----+-------+ | Controllers | 51762 | 41676 | 554 | 4170 | 7 | 7 | | Helpers | 15863 | 12986 | 18 | 1478 | 82 | 6 | | Models | 104034 | 81971 | 1851 | 9241 | 4 | 6 | | Mailers | 2150 | 1729 | 42 | 203 | 4 | 6 | | Workers | 639 | 540 | 20 | 31 | 1 | 15 | | Chanko units | 10341 | 8587 | 8 | 229 | 28 | 35 | | Libraries | 50661 | 41872 | 626 | 3790 | 6 | 9 | | Feature specs | 49901 | 40916 | 0 | 205 | 0 | 197 | | Request specs | 43437 | 37448 | 0 | 19 | 0 | 1968 | | Routing specs | 627 | 505 | 0 | 0 | 0 | 0 | | Controller specs | 63678 | 52586 | 6 | 128 | 21 | 408 | | Helper specs | 81289 | 67277 | 3 | 69 | 23 | 973 | | Model specs | 156941 | 129837 | 5 | 124 | 24 | 1045 | | Worker specs | 901 | 747 | 0 | 1 | 0 | 745 | | Chanko unit specs | 11476 | 9210 | 0 | 12 | 0 | 765 | | Library specs | 24911 | 20824 | 26 | 116 | 4 | 177 | +----------------------+-------+-------+---------+---------+-----+-------+ | Total | 668611 | 548711 | 3159 | 19816 | 6 | 25 | +----------------------+-------+-------+---------+---------+-----+-------+ Code LOC: 189361 Test LOC: 359350 Code to Test Ratio: 1:1.9 .PEFMTDMBTT ݮΒͤͨ
None
IUUQTSFDSVJUDPPLQBEDPN ͍ͬ͠ΐʹΨγΨγ044ʹίϯτϦϏϡʔτ͠ͳ͕Β ։ൃͯ͘͠ΕΔਓืूͯ͠·͢ʂ