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
changeworld
April 18, 2017
Technology
2
390
技術的負債にどう挑むか? / SMS Tech Casual Talks 2017.04
『SMS Tech Casual Talks 2017.04』で講演した『技術的負債にどう挑むか?』
changeworld
April 18, 2017
Tweet
Share
More Decks by changeworld
See All by changeworld
Azure is empower every person and every organization on the planet achieve more
changeworld
0
1k
Azure で始める 未来のアジャイルソフトウェア開発 ABCD2020A
changeworld
0
270
Azure で始める未来のアジャイルソフトウェア開発
changeworld
0
620
devops found in 3 minutes!
changeworld
0
1.1k
NoOpsは悪い文明!!粉砕する!!
changeworld
0
2.5k
DO EPIC SHIT! JUST DO IT! Shut the fuck up and write some code!
changeworld
0
270
Take it easy, Azure DevOps
changeworld
1
2k
Why did I buy Surface Book 2 Excellent Edition
changeworld
0
260
To be or to do that is the question - DevOpsDays Tokyo 2018
changeworld
6
1.6k
Other Decks in Technology
See All in Technology
Amazon Quick Suite で始める手軽な AI エージェント
shimy
2
1.9k
Agent Skillsがハーネスの垣根を超える日
gotalab555
6
4.5k
Knowledge Work の AI Backend
kworkdev
PRO
0
280
事業の財務責任に向き合うリクルートデータプラットフォームのFinOps
recruitengineers
PRO
2
230
オープンソースKeycloakのMCP認可サーバの仕様の対応状況 / 20251219 OpenID BizDay #18 LT Keycloak
oidfj
0
190
通勤手当申請チェックエージェント開発のリアル
whisaiyo
3
480
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
5
870
Introduce marp-ai-slide-generator
itarutomy
0
130
Kiro を用いたペアプロのススメ
taikis
4
1.9k
"人"が頑張るAI駆動開発
yokomachi
1
620
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
770
MySQLのSpatial(GIS)機能をもっと充実させたい ~ MyNA望年会2025LT
sakaik
0
130
Featured
See All Featured
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
300
Done Done
chrislema
186
16k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
67
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
320
What does AI have to do with Human Rights?
axbom
PRO
0
1.9k
Unsuck your backbone
ammeep
671
58k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
260
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
180
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Designing for humans not robots
tammielis
254
26k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
93
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