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.5k
クライアントサイドでよく使われる Debounce処理 をサーバサイドで3回実装した話
yoshiori
2
1.1k
ソートできるUUID v7をJavaで使うときの話
yoshiori
8
8.3k
Go Down Rockin'
yoshiori
31
19k
テストデータを貯めて感じたこと
yoshiori
12
4.5k
エンジニアリング x US 海外とのコラボレーション
yoshiori
3
2.2k
未完成な技術と歩む道のりでの 試行錯誤
yoshiori
0
240
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
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
1.2k
FORENSIA: ローカルLLMフォレンジックハーネス
sumeshi
2
350
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
2
640
ラジオの科学
frievea
0
280
個人OSSが、机の上から世界に広がるまでの話
shinyasaita
1
370
システム思考で問題に対処する
yussak
0
210
toio・myCobotでフィジカルAIっぽいことを行うための検討(とりあえず調査) / フィジカルAI LT(IoTLTによる開催)
you
PRO
0
300
20分でわかるセキュアAPI
nwiizo
1
190
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
780
ガバメント AI 源内を地方自治体は活用できるのか可能性と課題、期待について
takeda_h
1
360
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
1.5k
20260807_第6回_関東kaggler会LT_claw系bot xangiと始める、"寂しくない" kaggle
sugupoko
0
200
Featured
See All Featured
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
YesSQL, Process and Tooling at Scale
rocio
174
15k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Making Projects Easy
brettharned
120
6.7k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
330
BBQ
matthewcrist
89
10k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
The SEO identity crisis: Don't let AI make you average
varn
0
530
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Code Review Best Practice
trishagee
74
20k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
400
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ʹίϯτϦϏϡʔτ͠ͳ͕Β ։ൃͯ͘͠ΕΔਓืूͯ͠·͢ʂ