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
技術的負債にどう挑むか? / SMS Tech Casual Talks 2017.04
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
changeworld
April 18, 2017
Technology
390
2
Share
技術的負債にどう挑むか? / SMS Tech Casual Talks 2017.04
『SMS Tech Casual Talks 2017.04』で講演した『技術的負債にどう挑むか?』
changeworld
April 18, 2017
More Decks by changeworld
See All by changeworld
Azure is empower every person and every organization on the planet achieve more
changeworld
0
1.1k
Azure で始める 未来のアジャイルソフトウェア開発 ABCD2020A
changeworld
0
290
Azure で始める未来のアジャイルソフトウェア開発
changeworld
0
650
devops found in 3 minutes!
changeworld
0
1.2k
NoOpsは悪い文明!!粉砕する!!
changeworld
0
2.6k
DO EPIC SHIT! JUST DO IT! Shut the fuck up and write some code!
changeworld
0
280
Take it easy, Azure DevOps
changeworld
1
2k
Why did I buy Surface Book 2 Excellent Edition
changeworld
0
270
To be or to do that is the question - DevOpsDays Tokyo 2018
changeworld
6
1.7k
Other Decks in Technology
See All in Technology
生成AI時代のエンジニア育成 変わる時代と変わらないコト
starfish719
0
600
Data Hubグループ 紹介資料
sansan33
PRO
0
2.9k
Databricksで構築するログ検索基盤とアーキテクチャ設計
cscengineer
0
150
AI時代に新卒採用、はじめました/junior-engineer-never-die
dmnlk
0
240
Digitization部 紹介資料
sansan33
PRO
1
7.2k
Bluesky Meetup in Tokyo vol.4 - 2023to2026
shinoharata
0
150
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
16k
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
380
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.2k
🀄️ on swiftc
giginet
PRO
0
330
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」ご紹介資料
laysakura
0
1.6k
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.1k
How to make the Groovebox
asonas
2
2.1k
Statistics for Hackers
jakevdp
799
230k
So, you think you're a good person
axbom
PRO
2
2k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
370
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
290
Leo the Paperboy
mayatellez
7
1.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Writing Fast Ruby
sferik
630
63k
Transcript
© 2017 Takashi Takebayashi Takashi Takebayashi(a.k.a changeworlds) ٕज़తෛ࠴ʹ Ͳ͏Ή͔ʁ SMS
Tech Casual Talks 2017.04
© 2017 Takashi Takebayashi Hi everyone,
© 2017 Takashi Takebayashi The first publication of a writing
اը: தଜ͞Μ ޠpart: ۲ా͞Μ, ੴਆ͞Μ, ྛ ٕज़part: ُ͞Μ, ਗ਼ਫ͞Μ
© 2017 Takashi Takebayashi ٕज़తෛ࠴ͱԿ͔ʁ ٕज़తෛ࠴ͲͷΑ͏ʹى͜Δ͔ʁ ٕज़తෛ࠴ʹͲ͏औΓΉ͔ʁ ·ͱΊ ຊͷΞδΣϯμ
© 2017 Takashi Takebayashi ٕज़తෛ࠴ͱԿ͔ʁ
© 2017 Takashi Takebayashi ٕज़తෛ࠴ͱԿ͔ʁ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ٕज़తෛ࠴ is લआΓ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar લआΓ
© 2017 Takashi Takebayashi ٕज़తෛ࠴ is લआΓ https://pbs.twimg.com/media/CXXv82GUsAAqJd1.jpg લआΓ ण໋ΛͬͯࠓͷઓಆೳྗΞοϓ
© 2017 Takashi Takebayashi ٕज़తෛ࠴ ͲͷΑ͏ʹى͜Δ͔ʁ
© 2017 Takashi Takebayashi Ϝμͷߏͱϓϩηε https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ٕज़తෛ࠴ܽؕͷੵͰ͋Δ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi རࢠͷࢧ͍࣌ؒͷϜμ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ѱ॥ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ෛ࠴ͷՄೳੑ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ෛ࠴ͷՄೳੑ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar ෛ࠴ͷՄೳੑ มߋ x ෳࡶ
/ ࣭ͷίϯτϩʔϧ۩߹
© 2017 Takashi Takebayashi ࣭ͷίϯτϩʔϧ۩߹͕େ͖͚Εɺมߋෳࡶ ͕ߴͯ͘ɺٕज़తෛ࠴ͷՄೳੑେ͖͘ͳΒͳ ͍ ٯʹɺ࣭ͷίϯτϩʔϧ۩߹͕͚Εɺมߋ ෳࡶ͕ͯ͘ɺٕज़తෛ࠴ͷՄೳੑ͕େ͖͘ͳ Δ
ٕज़తෛ࠴ͷՄೳੑ
© 2017 Takashi Takebayashi ٕज़తෛ࠴ʹ Ͳ͏औΓΉ͔ʁ
© 2017 Takashi Takebayashi Step1: ࠜຊݪҼΛಛఆ͢Δ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi Step2: ͦΕʹରॲ͢Δ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ։ൃऀͱͯ͠ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ։ൃऀ: ࣭Λ্ͤ͞Α͏ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ։ൃऀ: ઃܭΛຏ͜͏ https://www.slideshare.net/bigvisible/managing-technical-debt-2011-webinar
© 2017 Takashi Takebayashi ࣮ફ ʢͬͯΈͨʣ
© 2017 Takashi Takebayashi ঢ়Λݟ͚ͭΔ ηογϣϯڞ༗ϑΝΠϧ͕NFSʹ͋ΓɺՄ༻ੑࠓޙͷ֦ॆʹ՝༗ “ͳͥͦΕ͕ىͬͨ͜ͷ͔ʁ”ɺ“ͳʹ͕ݪҼ͔ʁ”Λࣗ͢Δɻ ࠜຊݪҼʹͨͲΓͭ͘·Ͱ“ͳͥʁ”Λ܁Γฦ͢ ϑΝΠϧҎ֎Ͱηογϣϯڞ༗ͷํ๏ΛΒͳ͔͔ͬͨΒ? RedisΛઃܭ࣌ͷਓ͕Βͳ͔͔ͬͨΒ?
࣮ફ1: NFS Step1
© 2017 Takashi Takebayashi ࣗͷίϯτϩʔϧʹ͋Δ߹ɺ͢ʂ Өڹ͕͋ͬͯखʹෛ͑ͳ͍߹ɺڞ௨ͷඪʹ͢Δ ࣗͷίϯτϩʔϧ֎ʹ͋Δ߹ɺӨڹΛ͑Δ NFSґཔ͞ΕͨͷͰࣗͷίϯτϩʔϧʹ͋ΔͱࢥͬͨͷͰ͠ʹ औΓֻ͔ͬͨ ࣮ફ1:
NFS Step2
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture উͬͨο!ୈ3෦!
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture http://checkmate-blog.com/wp-content/uploads/2016/11/a00567-1.jpg Mxstxrਆʮ(લུ)ͦΕHAProxy͡Όͳͯ͘
Route53ͷ͓ࣄͳؾ͕͠·͢Ͷɻʯ->
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture before
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture after
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture after উͬͨο!ୈ3෦!
উͬͨο!ୈ3෦!(2ճ)
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture উͬͨο!ୈ3෦! http://checkmate-blog.com/wp-content/uploads/2016/11/a00567-1.jpg
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture উͬͨο!ୈ3෦! http://checkmate-blog.com/wp-content/uploads/2016/11/a00567-1.jpg
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Architecture উͬͨο!ୈ3෦! sxnaxtਆʮʯ->
http://checkmate-blog.com/wp-content/uploads/2016/11/a00567-1.jpg
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 Mxstxrਆ, sxnaxtਆʮʯ-> http://checkmate-blog.com/wp-content/uploads/2016/11/a00567-1.jpg
© 2017 Takashi Takebayashi ࣮ફ1: NFS Step2 άΤʔࢮΜͩϯΰ http://checkmate-blog.com/wp-content/uploads/2016/11/a00567-1.jpg
© 2017 Takashi Takebayashi ࣗͷίϯτϩʔϧʹ͋Δ߹ɺ͢ʂ Өڹ͕͋ͬͯखʹෛ͑ͳ͍߹ɺڞ௨ͷඪʹ͢Δ ࣗͷίϯτϩʔϧ֎ʹ͋Δ߹ɺӨڹΛ͑Δ NFSґཔ͞ΕͨͷͰࣗͷίϯτϩʔϧʹ͋ΔͱࢥͬͨͷͰ͠ʹ औΓֻ͔ͬͨ ৭ʑ՝Λࢦఠ͞Εɺʑແࣄࢮͭͭ͠ɺલਐ͍ͯͨ͠
ݱࡏࣗͷίϯτϩʔϧ֎ ࣮ફ1: NFS Step2
© 2017 Takashi Takebayashi ࣗͷίϯτϩʔϧʹ͋Δ߹ɺ͢ʂ Өڹ͕͋ͬͯखʹෛ͑ͳ͍߹ɺڞ௨ͷඪʹ͢Δ ࣗͷίϯτϩʔϧ֎ʹ͋Δ߹ɺӨڹΛ͑Δ NFSґཔ͞ΕͨͷͰࣗͷίϯτϩʔϧʹ͋ΔͱࢥͬͨͷͰ͠ʹ औΓֻ͔ͬͨ(͕ɺ) ৭ʑ՝Λࢦఠ͞Εɺʑແࣄࢮͭͭ͠ɺલਐ͍ͯͨ͠(͕ɺ)
AWSͷRedis(Amazon ElastiCache)ͷར༻ඞਢʹํస͕͋ͬͨ(ͨΊɺ) ݱࡏࣗͷίϯτϩʔϧ֎(←Amazon ElastiCacheʹAWS͔Β͔͠ΞΫη εͰ͖ͳ੍͍ݶ͕͋ΔͨΊ) ࣮ફ1: NFS Step2 ແࣄࢮ େࣄͳ͜ͱͳͷͰ(ry ແࣄࢮ
© 2017 Takashi Takebayashi ঢ়Λݟ͚ͭΔ Sticky Session͕ઃఆ͞Ε͓ͯΓɺ͏·͘ෛՙ͕ࢄ͞Εͳ͍՝༗ “ͳͥͦΕ͕ىͬͨ͜ͷ͔ʁ”ɺ“ͳʹ͕ݪҼ͔ʁ”Λࣗ͢Δɻ ࠜຊݪҼʹͨͲΓͭ͘·Ͱ“ͳͥʁ”Λ܁Γฦ͢ ηογϣϯͷγϦΞϥΠζԽΛΒͳ͔͔ͬͨΒ?
αʔό͕JBoss, GlassFishͰ·͍͠γϦΞϥΠζԽ͕Ͱ͖ͳ͔͔ͬͨΒ? [֬ఆ]ϦϦʔε࣌ʹJBossͩͱΤϥʔʹͳͬͨͷͰɺٸᬎBPGlassFishʹͨ͠ ͔Β? ͦͷޙɺΤϥʔͷݪҼಛఆΛ͠ͳ͔͔ͬͨΒ? ࣮ફ2: Sticky Session Step1
© 2017 Takashi Takebayashi ࣗͷίϯτϩʔϧʹ͋Δ߹ɺ͢ʂ Өڹ͕͋ͬͯखʹෛ͑ͳ͍߹ɺڞ௨ͷඪʹ͢Δ ࣗͷίϯτϩʔϧ֎ʹ͋Δ߹ɺӨڹΛ͑Δ Sticky Sessionґཔ͞ΕͨͷͰࣗͷίϯτϩʔϧʹ͋ΔͱࢥͬͨͷͰ͠ʹऔΓֻ͔ͬͨ JBoss,
GlassFishͰSticky Sessionௐࠪͷ݁Ռɺඇৗʹ͍͠ -> Tomcatʹมߋͯ͠ྑ͍ͱڐՄΒ͍ɺଓߦ Tomcatʹม͑ͯγϦΞϥΠζԽͰΤϥʔɺҎԼௐࠪͯ͠Βͬͨ݁Ռ Hibernate, Log4Jͷόά(॥ࢀর) HibernateΛόάղফ൛·ͰόʔδϣϯΞοϓͯ͠Log4JͷͨΊʹղফ͕͍͠(Өڹൣғଟ͖ա͗Δ) γϦΞϥΠζ௨Βͳ͘ͳΔͷΛ։ൃ͠ͳ͕ΒݕͰ͖ΔΑ͏ͳঢ়ଶʹͳ͍ͱɺͭ·Γ࠷ॳظͷϛ χϚϜ͔࣌Βηογϣϯ֎෦Խ͞Εͯͳ͍ͱ͜Εͳ͔ͳ͔࣮ݱ͍͠ͷͰͳ͍͔ ͜ΕΛ࣮ݱ͠Α͏ͱࢥͬͨΒΞʔΩςΫνϟ৽͘͢͠ΔͳΓͯ͠ɺSpringSession ͱ͔Λ͍ͬͯ͘ͷ ͕Α͍ͷͰͳ͍͔ ݱࡏࣗͷίϯτϩʔϧ֎(←ΞʔΩςΫνϟ৽ͰӨڹൣғେ͖ա͗Δ) ࣮ફ2: Sticky Session Step2
© 2017 Takashi Takebayashi ࣗͷίϯτϩʔϧʹ͋Δ߹ɺ͢ʂ Өڹ͕͋ͬͯखʹෛ͑ͳ͍߹ɺڞ௨ͷඪʹ͢Δ ࣗͷίϯτϩʔϧ֎ʹ͋Δ߹ɺӨڹΛ͑Δ NFSґཔ͞ΕͨͷͰࣗͷίϯτϩʔϧʹ͋ΔͱࢥͬͨͷͰ͠ʹ औΓֻ͔ͬͨ(͕ɺ) ৭ʑ՝Λࢦఠ͞Εɺʑແࣄࢮͭͭ͠ɺલਐ͍ͯͨ͠(͕ɺ)
AWSͷRedis(Amazon ElastiCache)ͷར༻ඞਢʹํస͕͋ͬͨ(ͨΊɺ) ݱࡏࣗͷίϯτϩʔϧ֎(←Amazon ElastiCacheʹAWS͔Β͔͠ΞΫη εͰ͖ͳ੍͍ݶ͕͋ΔͨΊ) ࣮ફ2: Sticky Session Step2 ແࣄࢮ େࣄͳ͜ͱͳͷͰ(ry ແࣄࢮ
© 2017 Takashi Takebayashi ঢ়Λݟ͚ͭΔ αʔόߏஙͰChefͱखಈ͕ࠞࡏ͓ͯ͠Γɺಉ͡ڥ͕࠶ݱͰ͖ͳ͍ “ͳͥͦΕ͕ىͬͨ͜ͷ͔ʁ”ɺ“ͳʹ͕ݪҼ͔ʁ”Λࣗ͢Δɻ ࠜຊݪҼʹͨͲΓͭ͘·Ͱ“ͳͥʁ”Λ܁Γฦ͢ ChefΛ͖ͳϑϨϯζͱݏ͍ͳϑϨϯζ͕͍͔ͨΒ? ChefΛ͖ͳϑϨϯζ͕ୀ৬͔ͨ͠Β?
࣮ફ3: NFS&खಈߏங Step1
© 2017 Takashi Takebayashi ࣗͷίϯτϩʔϧʹ͋Δ߹ɺ͢ʂ Өڹ͕͋ͬͯखʹෛ͑ͳ͍߹ɺڞ௨ͷඪʹ͢Δ ࣗͷίϯτϩʔϧ֎ʹ͋Δ߹ɺӨڹΛ͑Δ Terraform(Hashicorp)ͱ͍͏IaCπʔϧͰڥΛߏங ࠓͷͱ͜ΖඈΜͰདྷ͍ͯͳ͍͕ɺ༉அ͢Δͱ͙͢ʹແࣄࢮ͢ ΔͷͰɺҙͭͭ͠ணखதɹˡɹΠϚίί
࣮ફ3: NFS&खಈߏங Step2
© 2017 Takashi Takebayashi ࣗͷίϯτϩʔϧʹ͋Δ߹ɺ͢ʂ Өڹ͕͋ͬͯखʹෛ͑ͳ͍߹ɺڞ௨ͷඪʹ͢Δ ࣗͷίϯτϩʔϧ֎ʹ͋Δ߹ɺӨڹΛ͑Δ NFSґཔ͞ΕͨͷͰࣗͷίϯτϩʔϧʹ͋ΔͱࢥͬͨͷͰ͠ʹ औΓֻ͔ͬͨ(͕ɺ) ৭ʑ՝Λࢦఠ͞Εɺʑແࣄࢮͭͭ͠ɺલਐ͍ͯͨ͠(͕ɺ)
AWSͷRedis(Amazon ElastiCache)ͷར༻ඞਢʹํస͕͋ͬͨ(ͨΊɺ) ݱࡏࣗͷίϯτϩʔϧ֎(←Amazon ElastiCacheʹAWS͔Β͔͠ΞΫη εͰ͖ͳ੍͍ݶ͕͋ΔͨΊ) ݁ʂʂ લआΓɺμϝઈରʂ େࣄͳ͜ͱͳͷͰ(ry લआΓɺμϝઈରʂ
© 2017 Takashi Takebayashi ·ͱΊ
© 2017 Takashi Takebayashi ٕज़తෛ࠴ͱઌͷͨΊʹະདྷΛ٘ਜ਼ʹ͢Δ͜ͱ ٕज़తෛ࠴ѱ॥͔ΒੜΈग़͞ΕΔͷͰɺ࣭ͷ ίϯτϩʔϧʹཹҙ͠Α͏ ։ൃऀϙʔτϑΥϦΦʹࢿ͠Α͏ ࣭Λ্ͤ͞Α͏ σβΠϯΛຏ͜͏
·ͱΊ
© 2017 Takashi Takebayashi Thank you for your attention. Any
questions?
© 2017 Takashi Takebayashi http://shisly.cocolog-nifty.com/photos/uncategorized/2015/04/18/martin_luther5.jpg