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
NIFTY Tech Talkコラボ 月1億PVのニュースサイトを落とさない技術
Search
ニフティ株式会社
PRO
April 28, 2023
Video
Resources
Programming
1
610
NIFTY Tech Talkコラボ 月1億PVのニュースサイトを落とさない技術
ニフティ株式会社
PRO
April 28, 2023
Tweet
Share
Video
Resources
落ちないシステムの作り方 (NIFTY Tech Talkとニフクラエンジニアミートアップのコラボレーション企画)
https://nifty.connpass.com/event/279053/
More Decks by ニフティ株式会社
See All by ニフティ株式会社
GitHubで育つ コラボレーション文化 : ニフティでのインナーソース挑戦事例 - 2024-12-16 GitHub Universe 2024 Recap in ZOZO
niftycorp
PRO
0
120
Grow on GitHub Collaboration Culture: Case Study of InnerSource Challenge - GitHub Universe 2024 Recap in ZOZO
niftycorp
PRO
0
20
これが俺の”自分戦略” プロセスを楽しんでいこう! - Developers CAREER Boost 2024
niftycorp
PRO
0
200
継続的な改善のためのmodulesの適切な分割単位 - NIFTY Tech Talk #23
niftycorp
PRO
0
110
Re:ゼロから始めるTerraform生活 ~IaC入門編~ - NIFTY Tech Talk #23
niftycorp
PRO
0
110
Terraformにベストプラクティスを取り入れた - NIFTY Tech Talk #23
niftycorp
PRO
0
130
AWS AppSyncを用いた GraphQL APIの開発について - NIFTY Tech Talk #22
niftycorp
PRO
0
140
「天気予報があなたに届けられるまで」 - NIFTY Tech Talk #22
niftycorp
PRO
0
170
@nifty天気予報:フルリニューアルの挑戦 - NIFTY Tech Talk #22
niftycorp
PRO
0
150
Other Decks in Programming
See All in Programming
fs2-io を試してたらバグを見つけて直した話
chencmd
0
240
ドメインイベント増えすぎ問題
h0r15h0
2
430
create_tableをしただけなのに〜囚われのuuid編〜
daisukeshinoku
0
290
良いユニットテストを書こう
mototakatsu
8
3.1k
歴史と現在から考えるスケーラブルなソフトウェア開発のプラクティス
i10416
0
140
rails stats で紐解く ANDPAD のイマを支える技術たち
andpad
1
300
Zoneless Testing
rainerhahnekamp
0
120
return文におけるstd::moveについて
onihusube
1
1.3k
各クラウドサービスにおける.NETの対応と見解
ymd65536
0
180
testcontainers のススメ
sgash708
1
130
php-conference-japan-2024
tasuku43
0
360
テストケースの名前はどうつけるべきか?
orgachem
PRO
0
160
Featured
See All Featured
Side Projects
sachag
452
42k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
1
110
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
Mobile First: as difficult as doing things right
swwweet
222
9k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.1k
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
Building Your Own Lightsaber
phodgson
103
6.1k
A Tale of Four Properties
chriscoyier
157
23k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
Speed Design
sergeychernyshev
25
680
Transcript
*CVLJ/BLBNVSB "QSJM མͪͳ͍γεςϜͷ࡞Γํ ݄ԯ17ͷ χϡʔεαΠτΛ མͱ͞ͳ͍ٕज़
ձһγεςϜ(ୈ։ൃνʔϜ χϑςΟχϡʔε։ൃϦʔμʔςοΫϦʔυ /.BDIJOF-FBSOJOH1SPEVDU&OHJOFFS େֶӃͰਂֶशΛ༻͍ͨಈըೝࣝͷݚڀ %FWFMPQFST4VNNJUొஃऀ ϕετεϐʔΧʔҐɺެื உঁࠞνΞϦʔσΟϯάຊද தଜҏਧ
ੈքେձ͕ϑϩϦμͷσΟζχʔϥϯυͰߦΘΕΔΜͰ͕͢ େձޙʹߦͬͨຊͷΞόλʔͷΞτϥΫγϣϯ͕ΊͬͪΌ໘ന͔ͬͨʜ
χϑςΟχϡʔε ΞάϦήʔγϣϯܕχϡʔεϝσΟΞ 1$ εϚϗ ΞϓϦ
ࠓͷΰʔϧ ݄ԯ17Ͱ མͪͳ͍མͱ͞ͳ͍ ։ൃख๏ΛΔ
χϡʔεαΠτͷಛੑ w 4&0ରࡦͷͨΊͷසൟͳߋ৽͕͋Δ w (PPHMFͷίΞΞοϓσʔτͱݺΕΔෆఆظͳେنͳߋ৽͕ߦΘΕΔͱɺ ͦ͜ʹ߹Θͤͨվम͕ඞཁ w ॠؒతʹ17͕Ͷ্͕Δ͜ͱ͕͋Δ w
ͷχϡʔε͓னɾ༦ํͷ࣌ؒଳͳͲɺ17ʹภΓ͕͋Δ w 17͕ҰൠతͳαʔϏεͱൺֱ͢ΔͱେنͰ͋Δ w ͲΜͳΞΫηε͕དྷͯ҆ఆతʹϨεϙϯεΛฦ͍ͨ͠ ։ൃνʔϜͦ͜·Ͱଟ͘ͳ͍தͰɺൣғͳٕज़ελοΫΛѻ͏ඞཁ͕͋Γɺ খͰߦ͏ඞཁ͕͋Δͱ͍͏݅͋ͬͨΓ͠·͢
γεςϜΛམͱ͞ͳ͍ͨΊʹ ϦϦʔεͷࣗಈԽ ίϯςφͱΫϥυٕज़ $%/ͷ׆༻
ϦϦʔεͷࣗಈԽ ϦϦʔε࡞ۀΛࣗಈԽͤͯ͞ɺΦϖϛεΛ࠷খݶʹ͠·͢
ϞϊϦεΞʔΩςΫνϟ w )5.-ੜ"1*ɺαʔόʔػೳɺόονॲཧɺ ཧػೳͳͲ͕ϑϨʔϜϫʔΫͰ݁ w ιϑτΣΞ%#ݕূͷͨΊͷอकίετ͕ ʑ૿Ճ w ࣗࣾϑϨʔϜϫʔΫͷͨΊଐਓԽ͕ਐΈ͍͢
w ΦϯϓϨϛεڥΛఆͯ͠࡞ΒΕ͓ͯΓɺ ΫϥυͷεέʔϦϯάϝϦοτͳͲͷԸܙΛ ड͚ΒΕͳ͍ w ϞϊϦγοΫͰػೳ͕ଟ͍ͨΊɺҰׅͰͷڥ ҠߦෆՄೳ
IUUQTOJGUZDPOOQBTTDPNFWFOU /*'5:5FDI5BMLϨΨγʔγεςϜ͔Βͷ٫
(JUIVC"DUJPOT
13͝ͱʹࣗಈςετΛ࣮ࢪ w ςετίʔυΛ༻ҙ͓͖ͯ͠ɺ13͕࡞ ͞Εͨ߹ʹࣗಈͰ࣮ߦ͞ΕΔΑ͏ʹ ઃఆ͢Δ w શͯͷ13Ͱ࣮ߦ͞ΕΔΑ͏ʹͳ͍ͬͯΔ ͷͰɺςετ͕௨Βͳ͍ίʔυجຊత ʹNBJOϒϥϯνʹϚʔδ͞Εͳ͍
w ϨϏϡʔͷෛ୲ܰݮʹͭͳ͕Δ
13͝ͱʹࣗಈςετΛ࣮ࢪ 13Λ࡞͢Δͱɺ 13͝ͱʹςετίʔυ͕࣮ߦ͞ΕΔ ςετίʔυ͕ࣦഊ͢Δͱ νΣοΫࣦഊʹͳΓɺϚʔδෆՄʹͳΔ ʢςετ͕௨Βͳ͍ίʔυϚʔδ͞Εͳ͍ʣ
"84$PEF1JQFMJOF
"84্ͷϦϦʔεϑϩʔΛࣗಈԽ w $PEF1JQFMJOFΛར༻͢Δ͜ͱͰɺ %PDLFSΠϝʔδͷϏϧυ͔Β "NB[PO&$4্ͷ#MVF(SFFO σϓϩΠ·Ͱ͕શࣗಈԽ͞ΕΔ w ίʔυͷมߋ͕ى͖Δͱ $PEF1JQFMJOF͕ࣗಈىಈ͠ɺࣗಈ ͰϦϦʔε·ͰߦΘΕΔ
w ϨϏϡʔϑϩʔΛڬΉ͜ͱͰɺ࠷ऴతͳ σϓϩΠΛࢭΊΔ͜ͱՄೳʹͯ͋͠Δ Ҿ༻ݩɿIUUQTCMPHTQBDFNBSLFUDPNDPEFDJDEDPEFQJQFMJOF "84$PEF1JQFMJOFͰ$*$%ͷΈΛߏங͓ͨ͠
શͯͷϦϦʔεϑϩʔΛࣗಈԽ͢Δ w (JU)VC্Ͱࣗಈςετ͓ΑͼϨϏϡʔ ͕ߦΘΕΔ w ϨϏϡʔͰঝೝ͞ΕɺNBJOϒϥϯνʹ Ϛʔδ͞ΕΔͱɺࣗಈతʹ $PEF1JQFMJOF͕ىಈ͢Δ w #MVF(SFFOσϓϩΠʹΑͬͯੇஅͳ͘
ࣗಈͰσϓϩΠ͞ΕΔ w ϦϦʔε࣌ʹखಈͰߦ͏࡞ۀ͕ͳ͘ɺ ΦϖϛεΛ࠷খݶʹ͢Δ ϦϦʔεϑϩʔ͕ࣗಈԽ͞Εͨਤ ʢ࣮ࡍʹӡ༻͍ͯ͠ΔڥͱҟͳΓ·͢ʣ
ίϯςφͱΫϥυٕज़ %PDLFSʹද͞ΕΔίϯςφٕज़ͱɺΫϥυΛϑϧ׆༻͢Δ͜ͱͰɺεέʔϦϯάΛ༰қʹ͠·͢
"84&$4
"QQMJDBUJPO"VUP4DBMJOHʹΑΔΦʔτεέʔϧ w &$4αʔϏεશମͷ$16ฏۉ༻͕ Ҏ্ʹͳͬͨΒɺࣗಈͰλεΫ ͕εέʔϦϯά͢ΔΑ͏ʹ͢Δ w ͜ͷεέʔϦϯά$16ฏۉ༻ ͕ҎԼʹͳΔ·ͰߦΘΕΔ w
εέʔϧΞτʢॖখʣࣗಈతʹ ߦΘΕΔ w ίετ࠷దԽΛ࣮ݱ ΞΫηεྔʹԠͯ͡λεΫʢ˺αʔόʔʣ͕ ࣗಈͰεέʔϦϯά͢Δ༷ࢠ
"84-BNCEB
αʔόϨεΞʔΩςΫνϟ w ԠΛू͢Δ͚ͩͷ"1*ͳͲʹ-BNCEB ʢ͓Αͼ"844".ʣΛ࠾༻ w ։ൃऀ͕ҙࣝ͢Δඞཁ͕͋ΔͷίʔυͷΈ ʹͳΔͨΊɺεέʔϦϯάͳͲʹ͍ͭͯߟ ͑Δඞཁͳ͍ w ࣗಈతʹεέʔϦϯά͕ߦΘΕΔ
w ӡ༻ʹखؒΛ͔͚ΒΕͳ͍߹ʹɺ -BNCEBͳͲͷαʔόϨεΛ࠾༻͢Δ͖ w ෳͷσʔληϯλʔʹࢄ͞Ε͍ͯΔ ͨΊɺߴ͍োੑ͕͋Δ αʔόϨεͳϑϧϚωʔδυػೳͷΈΛಋೖ͍ͯ͠ΔγεςϜྫ શ͕ͯࣗಈతʹεέʔϦϯά͠ɺӡ༻ͷखؒΛ࠷খݶʹ͑Δ
$%/ͷ׆༻ "NB[PO$MPVE'SPOUΛ׆༻ͨ͠Ωϟογϡઓུʹ͍ͭͯհ͠·͢
"NB[PO$MPVE'SPOU
Ωϟογϡઓུͷߟ͑ํ w Ωϟογϡʹద͢Δσʔλͷੑ࣭💽 w ࠶औಘ͕ՄೳͰ͋Δ͜ͱ w χϑςΟχϡʔε63-ʹରͯ͠΄΅ҰҙͷϖʔδΛฦ͍ͯ͠Δ w ಡΈࠐΈස͕ߴ͍͜ͱ w
17͕ͶΔͳͲͷ߹ʹɺͦͷ࣌ؒଳͷಡΈࠐΈස͕ಛʹଟ͘ͳΔ w ॻ͖ࠐΈස͕͍͜ͱ w هࣄ༰͕ॻ͖มΘΔ͜ͱͦ͜·Ͱଟ͘ͳ͍ͨΊɺॻ͖ࠐΈස͍ w χϡʔεαΠτ$%/ʹΑΔΩϟογϡͷԸܙΛड͚͍͕͢ɺࠒ ·ͰΩϟογϡώοτఔͩͬͨʢ͍ͬͨͳ͍ʜ💸ʣ
࣮ࡍͷΩϟογϡઓུվળ w ΄΅ݻఆͷԠΛฦ͍ͯ͠Δ"1*17ͷগͳ͍ϖʔδ͔Β࣮ࢪ🔥 w "1*Ͱ$MPVE'SPOUͳͲͷ$%/ͷΩϟογϡͷԸܙΛड͚Δ͜ͱ͕Ͱ͖Δ w ࠷ޙʹهࣄϖʔδͦͷͷͰΩϟογϡઓུΛ࣮ߦ💥 w ࣌ؒଳʹΑΔ͕࠷େͷΩϟογϡώοτʹͳͬͨ🚀 w
هࣄ༰Ͱώοτ͕͋ͬͯɺཧతʹ͍ۙ$%/͔ΒهࣄΛฦ͢͜ͱͰ҆ఆͨ͠ϨεϙϯεΛ࣮ݱ
ࠓͨ͜͠ͱ ϦϦʔεͷࣗಈԽ ɹ(JUIVC"DUJPOTɾ"84$PEF1JQFMJOFɾϦϦʔεϑϩʔͷࣗಈԽ ίϯςφͱΫϥυٕज़ ɹ"84&$4ɾ"QQMJDBUJPO"VUPTDBMJOHɾ"84-BNCEBɾαʔόϨε $%/ͷ׆༻ ɹ"NB[PO$MPVE'SPOUɾΩϟογϡઓུͷߟ͑ํͱ࣮ફ