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
日経電子版を支える基盤API
Search
osamunmun
February 03, 2017
Programming
7.4k
17
Share
日経電子版を支える基盤API
osamunmun
February 03, 2017
More Decks by osamunmun
See All by osamunmun
日経電子版SREチーム立ち上げ中
osamunmun
6
15k
Other Decks in Programming
See All in Programming
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
0
290
Oxcを導入して開発体験が向上した話
yug1224
4
260
AI開発を加速するためにテスト戦略を言語化した
yoshihiro_shu
0
100
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
210
GitHub Copilot CLIのいいところ
htkym
2
1.2k
[KCD Czech] eBPF Meets the GPU: Future of AI Infra Observability
doniacld
0
130
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.3k
ECR拡張スキャンでSBOMを収集して サプライチェーン攻撃の影響調査を 爆速で終わらせてみた
akihisaikeda
2
210
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.1k
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.1k
iOS26時代の新規アプリ開発
yuukiw00w
0
230
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
7
2.8k
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Writing Fast Ruby
sferik
630
63k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
160
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.8k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
850
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
300
Abbi's Birthday
coloredviolet
2
7.8k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
22k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
180
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
720
Transcript
ܦిࢠ൛Λࢧ͑Δج൫"1* "1*.&&561 0TBNV5BLBZBTV
2 0TBNV5BLBZBTV &OHJOFFSBU/JLLFJ *OD 1ZUIPO "84 3VCZ MVB ʹܦʹ+0*/ ओʹܦిࢠ൛ͷ"1*ͷ։ൃʹैࣄ
"CPVUNF
3 ݄ʹץ ༗ྉձһ ԁ݄ ສਓ ݄ؒΞΫηεԯ݅
ຖ݅ͷهࣄΛ৴ 1$ɾϞόΠϧαΠτɺJ04ɺ "OESPJEΞϓϦʹରԠ ܦిࢠ൛ͱ
4 "1*ͷΞʔΩςΫνϟ ։ൃɺӡ༻ํ๏ʹ͍ͭͯ ࠓޙͷํੑɺ՝ ࠓ͓͢͠Δ͜ͱ
ΞʔΩςΫνϟ 5
6 ܦిࢠ൛ͷγεςϜશମ૾ "84 ϩάੳͳͲɺαʔϏε ։ൃऀ͕ར༻ هࣄͷฤूɺཧ $.4 هࣄ৴ ֤छ"1* ੳج൫
ࠓ͓͢͠Δ zج൫"1*z͜ͷҰ෦
7 ج൫"1*ΞʔΩςΫνϟ "1*("5&8": 4&"3$) '-"( 1"1&3 ʜ ֤$MJFOU ଞγεςϜͷαʔόʔ *."(&
$%/ ج൫"1* ݸͷ"1* ֤"1*ϦΫΤε τͷೝՄݕূ TJHOFEVSMͰ ΞΫηε੍ޚ 4FBSDI&OHJOF %#4UPSBHF #BUDI -PH
8 "1*("5&8":ͷׂ ɾϢʔβʔʗΫϥΠΞϯτೝূ ɾ֤"1*ͷϦΫΤετͷೝՄݕূ ɾཧը໘Ͱ֤$MJFOUͷݖݶཧ ɾ֤"1*ͷ*'༷υΩϡϝϯτ
.JDSPTFSWJDFT 9
10 ߏཁૉ "1*("5&8": 4&"3$) '-"( 1"1&3 ʜ *."(& $%/ ج൫"1*
4FBSDI&OHJOF %#4UPSBHF #BUDI -PH &MBTUJD#FBOTUBML &MBTUJD#FBOTUBML &MBTUJD#FBOTUBML &MBTUJD#FBOTUBML &MBTUJD#FBOTUBML $MPVE'SPOU 4 3FEJT 3%4 3FETIJGU "VSPSB &MBTUJD#FBOTUBML #JH2VFSZ 4
&$JOTUBODF 11 &MBTUJD#FBOTUBMLͷத "QQMJDBUJPO$POUBJOFS -PH4FOEFS$POUBJOFS ˞ ˞IUUQTHJUIVCDPNCVOHPVNFMPHTFOEFS ʜ ʜ ʜ
ʜ ෛՙʹԠͯ͡ BVUPTDBMF &-# &#ͷڥΛίʔυͰఆٛ ɾ&MBTUJD#FBOTUBMLͷઃఆϑΝΠϧ 71$ &-# 4FDVSJUZ(SPVQ "VUPTDBMF $MPVE8BUDI"MBSN ɾ%PDLFSSVOBXTKTPO $POUBJOFS ڥม Ϧιʔε ɾFCFYUFOTJPOT IPTU໊मਖ਼ OFXSFMJDઃఆ
12 ֤"1*ʹڞ௨෦͕ଟ͍ "1*("5&8": 4&"3$) '-"( 1"1&3 ʜ *."(& $%/ ج൫"1*
4FBSDI&OHJOF %#4UPSBHF #BUDI -PH &MBTUJD#FBOTUBML &MBTUJD#FBOTUBML &MBTUJD#FBOTUBML &MBTUJD#FBOTUBML &MBTUJD#FBOTUBML $MPVE'SPOU 4 3FEJT 3%4 3FETIJGU "VSPSB &MBTUJD#FBOTUBML #JH2VFSZ 4
13 ֤"1*ͷڞ௨෦ΛςϯϓϨʔτԽ SFRVJSFNFOUTUYU UPYJOJ %KBOHPΞϓϦͷઃఆ %PDLFSpMF
&MBTUJD#FBOTUBMLͷઃఆϑΝΠϧ $JSDMF$*ͷઃఆϑΝΠϧ
14 ڞ௨Խ͓ͯ͘͠ϝϦοτ &$JOTUBODF "QQMJDBUJPO$POUBJOFS -PH4FOEFS$POUBJOFS ˞ ʜ ʜ ʜ ʜ
։ൃऀ֤"1*ݻ༗ͷ ϏδωεϩδοΫʹྗ &-# ɾ৽͍͠"1*Λ্ཱ͙ͪ͛͢ΒΕΔ ɾมߋ༰Λ֤"1*ʹ؆୯ʹөͰ͖Δ UFNQMBUFͷߋ৽ DPPLJFQBUDIFS ˞ ͱ͍͏πʔϧ͕ ͋Δ ֤"1*ϨϙδτϦʹ࠷৽ͷςϯϓ ϨʔτΛద༻ ˞IUUQTHJUIVCDPNIJSPLJLZDPPLJFQBUDIFS
15 .JDSPTFSWJDFTͰΑ͔ͬͨ͜ͱ ɾ"1*͝ͱ ˺αʔϏε͝ͱʣͰૄ݁߹ʹ։ൃΛਐΊΒΕɺ ɹ։ൃεϐʔυ͕ͰΔ ɾ"1*͝ͱʹಠཱͯ͠σϓϩΠ͕ՄೳͰɺมߋ͍͢͠ ɾෛՙͷߴ͍"1*͚ͩεέʔϧͰ͖ɺϦιʔεͱίετͷ ɹ࠷దԽ͕Ͱ͖Δ
#BUDI 16
&$JOTUBODF 17 #BUDI&# %PDLFSͰߏங "QQMJDBUJPO$POUBJOFS &-# &$JOTUBODF /HJOY$POUBJOFS &-#
ʜ ʜ ɾ36/%&$,ͷઃఆ +0#ͷઃఆɺ࣮ߦཤ ྺ 3%4 .Z42- ʹอଘ ɾ֤+0#͝ͱʹ%PDLFSQVMM࣮ͯ͠ߦ &-#ͷIFBMUIDIFDLͷ ͨΊʹ/HJOY͕͍Δ ෳ+0#͕ͬͯޓ͍ʹ Өڹ͠ͳ͍ૉͳؔ
-0( 18
19 -PHͷྲྀΕ "QQMJDBUJPO$POUBJOFS -PH4FOEFS$POUBJOFS -PH"HHSFHBUPS BDUJPOMPH V84(*MPH OHJOYMPH ҙͷϩάFYݕࡧΫΤϦ ֤"1*
$MPVE'SPOU 4 MBNCEB ۙdϲ݄ ͘Β͍ͷϩά #JH2VFSZ 4 DGMPHTEPNBJOͱ͍͏CVDLFUʹॻ ͖ग़͢ͱMBNCEBͰॲཧͯ͠&4ʹೖΔઃఆ
%FQMPZ 20
21 %FQMPZqPX VOJUUFTU EPDLFSCVJME EPDLFSQVTI &MBTUJD#FBOTUBML EFQMPZ 1SPE&/7 4UBOECZ&/7 TXBQ
$MPVE'SPOU FFUFTU FFUFTU NBTUFSCSBODIEFWڥ EFQMPZNFOUQSPEVDUJPOCSBODIQSPEڥ JNBHF"1*͚ͩɺ$'͕લஈʹ ͍ΔͷͰɺ$'ܦ༝Ͱςετ EPDLFSQVMM &MBTUJD$POUBJOFS3FHJTUSZ DPNNJUIBTIͷઌ಄ จࣈͰUBH͚
22 TXBQ͙ͯ͢͠ΓସΘΔͷʁ ɾ&#ͷ%/4ͷ55-NJO EFGBVMU ɾͨͩ͠ɺ$MJFOU͕ΩϟογϡΛ࣋ͬͨ߹PVUPGDPOUSPM &$JOTUBODF /HJOY$POUBJOFS &-# ͜͜TXBQ
͠ͳ͍ SPVUF &MBTUJD#FBOTUBML 1SPE&/7 4UBOECZ&/7 &MBTUJD#FBOTUBML 1SPE&/7 4UBOECZ&/7 SFWFSTFQSPYZ͕ɺ "1*ͷTXBQΛै
NJOTFD 23 EFQMPZʹ݁ߏ͕͔͔͍࣌ؒͬͯͨ VOJUUFTU EPDLFSCVJME EPDLFSQVTI &MBTUJD#FBOTUBML EFQMPZ 1SPE&/7 4UBOECZ&/7
TXBQ $MPVE'SPOU FFUFTU FFUFTU EPDLFSQVMM &MBTUJD$POUBJOFS3FHJTUSZ NJO NJOTFD NJO ͦͷଞॾʑ߹Θͤͯ5PUBMNJO΄Ͳ
24 EFQMPZ࣌ؒΛॖ ɾ#BTF*NBHFʹ"MQJOF-JOVYΛར༻ ΠϝʔδαΠζΛେ෯ݮ.#.#ఔ ɾ$JSDMF$*ͰΩϟογϡΛར༻ EFQFOEFODJFTηΫγϣϯͰґଘϥΠϒϥϦΛΠϯετʔϧ EPDLFSCVJME͢Δલʹ࠷৽ΠϝʔδΛQVMM͓ͯ͘͠
NJOTFD 25 EFQMPZ͕࣌ؒNJO͘Β͍ॖ VOJUUFTU EPDLFSQVMMCVJME EPDLFSQVTI &MBTUJD#FBOTUBML EFQMPZ 1SPE&/7 4UBOECZ&/7
TXBQ $MPVE'SPOU FFUFTU FFUFTU EPDLFSQVMM &MBTUJD$POUBJOFS3FHJTUSZ NJOTFD NJOTFDTFD NJO 5PUBMNJO͘Β͍NJO͘Β͍
26 MBNCEBͷEFQMPZେମಉ͡ VOJUUFTU BQFYEFQMPZ MBNCEB
.POJUPSJOH/PUJpDBUJPO 27
28 ࢹͱ௨ͷશମ૾ Πϯϑϥ $16 .FNPSZ /FUXPSL $MPVE8BUDI ΞϓϦέʔγϣϯ Τϥʔ Ϧιʔεࢹ
MBUFODZ TUBUVTDPEF 63-ࢹ FFUFTU ి௨ ௨ઌ໊Ͱ ϩʔςʔγϣϯ
29 ͕ൃੜͨ͠Β,JCBOBΛ֬ೝ ͋Β͔͡Ίॏཁͳϝ τϦΫεͷμογϡ ϘʔυΛ࡞͓ͬͯ͘
30 5JQT සൟʹσϓϩΠ͕ߦΘΕΔ͠ɺ&MBTUJD#FBOTUBMLͷ&$Πϯελϯεෆఆظʹ ೖΕସΘΔ 4FOUSZ DPNNJUIBTIΛૹͬͯɺ ͲͷWFSTJPOͷΞϓϦ͔Λࣝผ /FXSFMJD IPTU໊ʹΞϓϦέʔγϣϯ໊ΛೖΕͯɺ ͲͷΞϓϦͷΠϯελϯε͔Λࣝผ
"84 31
32 "84ͳ͠ͰΓཱͨͳ͍ &$JOTUBODF "QQMJDBUJPO$POUBJOFS -PH4FOEFS$POUBJOFS ʜ ʜ ʜ ʜ &-#
ࣗͨͪͷൣғ ɾSPVUF &MBTUJD#FBOTUBML "$.ͳͲ ɹ"84ͷઃఆ ɾ%PDLFS$POUBJOFS ઃఆ͢Δͱ "84͔ΒͨΒ͞ΕΔͷ ɾBVUPTDBMFPVUJO ɾΠϯελϯεɺίϯςφͷࣗಈ෮چ ɾNPOJUPSJOH BMBSN ɾ63-ͷTXBQʹΑΔCMVFHSFFOEFQMPZ ɾଞଟʜ
33 ਐԽ͢Δ"84 Ҏ্ͷGFBUVSF ΛϦϦʔεɻຖͭҎ্ SF*OWFOUͰݸͷ৽ αʔϏε͕ൃද ,FZOPUFʹͯ l"84XJMMNBLFZPVGFFMMJLF
ZPVIBWFCFFOHJWFO4VQFS 1PXFSTz
34 Δ͔͠ͳ͍͜ͷϏοά SZ ɾອવͱ͍ͬͯͯ"84ͷਐԽͷԸܙ͕ड͚ΒΕͯ͠·͏ FY"844IJFME͕$MPVE'SPOUʹσϑΥϧτద༻ FY0QFO44-੬ऑੑରԠ FYΠϯελϯεԼ͛ɾɾ ɾອવͱ͍ͬͯΔͱ"84ͷਐԽͷԸܙΛड͚ΒΕͳ͍߹ଟ͍ ໌ࣔతͳόʔδϣϯΞοϓ FY&MBTUJDCFBOTUBMLͷQMBUGPSNͷߋ৽
৽αʔϏεͷݕূɺಋೖ FYMBNCEBBUFEHF "UIFOB 3FLPHOJUJPO ৽αʔϏεɺʑͷߋ৽ΛऔΓೖΕͯɺࣗࣾαʔϏεΛਐԽ͍ͤͯ͘͞
35 "84ͰϋϚΔ͜ͱΑ͋͘Δ 4VQQPSUܖΛ݁ΜͰ݁ߏ͍߹Θ ͍ͤͯ͠Δ "84ͷόάΛ౿Ή͜ͱ͋Δ ୯ʹ͍ํ͕Α͘Θ͔Βͳ͍߹
ػೳͷཁΛग़͢ ͳ͔ͳ͔5PLZPSFHJPOʹདྷͳ͍ ͳ͔ͳ͔("ʹͳΒͳ͍
4BB4ͷ׆༻ 36
37 4BB4։ൃɺӡ༻πʔϧܥ͕ଟ͍ ར༻ͯ͠Δ4BB4 4FOUSZ 4MBDL /FX3FMJD 4UBUVT$BLF (JUIVC QBHFSEVUZ $JSDMF$*
#JH2VFSZ 7JTJPO"1* /BUVSBM-BOHVBHF"1* 5SFMMP
*NBHF"1*Λஔ͖͑ 38
39 *NBHF"1*ͱ ΦϦδφϧը૾ σϑΥϧτ هࣄͷϨΠΞτʹ ߹ΘͤͯΓൈ͖ إೝࣝ SFTJ[F
DSPQ ࠲ඪࢦఆՄೳ TJHOFEVSM GPSNBUDPOWFSTJPO 8FC1 IUUQTBSUJDMFJNBHFOJLLFJDPNYYD@@%49.;01#KQH IBTIDED
40 *NBHF"1* $MPVE'SPOU &$JOTUBODF /HJOY$POUBJOFS OHY@TNBMM@MJHIUΛGPML *NBHF.BHJDL
MVBͰQBSBNFUFSWBMJEBUJPO PQFOSFTUZMVBOHJOYNPEVMF 4 JNBHF 4 JNBHFNFUBEBUB MBNCEB 4&"3$)"1* TFBSDISFTVMU JOEFYJOH JNBHFpMFͷIBTI إɾݐɾMPHPͷ࠲ඪ ը૾ͷMBCFM $.4 JNBHFpMF 7JTJPO"1*
41 -BNCEBͷ׆༻ 4 JNBHF MBNCEB $.4 JNBHFpMF MBNCEB ϑΝΠϧ໊ͱQBUIΛมߋ MBNCEB
4 JNBHFNFUBEBUB ͭͷ4FWFOU͔ΒͭͷMBNCEB ͔͠ൃՐͰ͖ͳ͍ͷͰɺSPVUJOH ແବʹ"1*Λୟ͔ͳ͍Α͏ʹɺ JNBHFpMFͷ&5BHΛνΣοΫ 7JTJPO"1*
42 *NBHF"1* $MPVE'SPOU &$JOTUBODF /HJOY$POUBJOFS OHY@TNBMM@MJHIUΛGPML *NBHF.BHJDL
MVBͰQBSBNFUFSWBMJEBUJPO PQFOSFTUZMVBOHJOYNPEVMF 4 JNBHF 4 JNBHFNFUBEBUB MBNCEB 4&"3$)"1* TFBSDISFTVMU JOEFYJOH JNBHFpMFͷIBTI إɾݐɾMPHPͷ࠲ඪ ը૾ͷMBCFM $.4 JNBHFpMF 4BB4Ͱஔ͖͑
43 ͳͥஔ͖͑ʁ ɾ(PPHMF$MPVE7JTJPO"1*ͰಘΒΕΔɺݐɾMPHPͷ࠲ඪɺ ը૾ͷMBCFMใ͕׆༻͞Εͳ͔ͬͨ ɾࣗલͰओʹ$MPVE'SPOUͷඅ༻͕݁ߏ͔͔Γɺ4BB4ʹൺͯ ͍҆Θ͚Ͱͳ͍ ɾ4BB4ʹ͋ΔػೳͷՃཁٻ͕͋ͬͨ Γൈ͖ͷ࠲ඪࢦఆͰͳ͘ɺDSPQGBDFͷΑ͏ʹࢦఆ͍ͨ͠
ΫϥΠΞϯτʹԠͯ͡ը૾αΠζͷ࠷దԽΛ͍ͨ͠ XBUFSNBSLΛ͚͍ͨ ɾܦిࢠ൛ݻ༗ͷཁ݅ʹ༝དྷ͢Δ༷ͳ͍ 4BB4Ͱ͋ΔఔΧελϚΠζͰ͖Δ߹͋Δ͠ɺ 4BB4ͱࣗલ"1*ͷΈ߹ΘͤΔύλʔϯ͋Δ هࣄը૾ΛΓൈ͘ͱ͖ʹʹͳΔέʔεɺ إ͕ରʹͳΔέʔε͕΄ͱΜͲ
44 ީิ SFTJ[F DSPQ إΛத৺ʹ͠ ͨDSPQ ը૾ͷॏͶ ߹Θͤ GPSNBU ม
4JHOFE 63- ը૾αΠζ ͷ࠷దԽ *NBHF"1* ˓ ˓ ☓ ☓ ˓ ˓ ☓ $MPVEJOBSZ ˓ ˓ ˓ ˓ ˓ ˓ ˓ JNH*9 ˓ ˓ ˓ ˓ ˓ ˓ ˓ "LBNBJ*NBHF .BOBHFS ˓ ˓ ☓ ˓ ˓ *NBHF'MVY ˓ ˓ ☓ ˓ ˓ ˞ݸਓௐͳͷͰɺ࠷৽ͷใ֤ެࣜιʔεΛ֬͝ೝ͍ͩ͘͞
45 ίϞσΟςΟԽͨ͠"1*4BB4ʁ ɾ*NBHFɺ4FBSDIɺػցֶशɾɾɾɺࠓޙ4BB4͞Βʹ૿͑ͦ͏ ࣗલ"1* 4BB4 อक ɾ4PGUXBSFWFSTJPOVQ FY੬ऑੑରԠ ɾোରԠ
΄ͱΜͲͳ͍ ɾ͓·͔ͤ ΧελϚΠζ ɾࣗ͝༝ʹ ɾཁɺҕୗϕʔε ΓͱΓ͕खؒɺͦ ͦͰ͖ͳ͍߹ ։ൃྗ ɾਓ ɾࣗલΑΓਓଟͯ͘ɺ։ൃྗߴ͍ ίετ $BTFCZ$BTF
46 ίϞσΟςΟԽͨ͠"1*4BB4ʁ ɾ*NBHFɺ4FBSDIɺػցֶशɾɾɾɺࠓޙ4BB4͕૿͑ͦ͏ ࣗલ"1* 4BB4 อक ɾ4PGUXBSFWFSTJPOVQ FY੬ऑੑରԠ ɾোରԠ
΄ͱΜͲͳ͍ ɾ͓·͔ͤ ΧελϚΠζ ɾࣗ͝༝ʹ ɾཁɺҕୗϕʔε ΓͱΓ͕खؒɺͦ ͦͰ͖ͳ͍߹ ։ൃྗ ɾਓ ɾࣗલΑΓਓଟͯ͘ɺ։ൃྗߴ͍ ίετ $BTFCZ$BTF $BTFCZ$BTF
47 ͜ΜͳΠϝʔδʁ "1*("5&8": 4&"3$) '-"( 1"1&3 ʜ *."(& $%/ ج൫"1*
ंྠͷ࠶ൃ໌ΑΓϥΠϒϥϦΛ ͬͨํ͕࣭ޮྑ͍ ϥΠϒϥϦͱಉ͡ײ֮ʁ
48 ࠓޙͷ՝औΓΜͰ͍Δ͜ͱ ɾ4BB4ͷ׆༻ ɾMBNCEBΛͬͨ4FSWFSMFTTͳΞʔΩςΫνϟͷద༻ վળ͞Εͦ͏ͳͱ͜Ζ͕͍͔ͭ͋͘Δ TUFQGVODUJPOTศརͦ͏͚ͩͲ·ͩ͞ΘΕͯͳ͍ ɾػցֶशΛ׆༻ͨ͠αʔϏε ɾ(PΛͬͨΞϓϦέʔγϣϯ։ൃ ɾMBNCEBͷΤϥʔϩά͕୳ͮ͠Β͍ ࠓ4FOUSZΛࠐΜͰΤϥʔΛૹ͍ͬͯΔ
$MPVE8BUDI-PHΛ4ʹྲྀ͠ࠐΜͰɺ"UIFOBͰ୳ͤΔΑ͏ʹ͢Δ ɾɾɾ
49 8F`SFIJSJOH TOJLLFJDPNTBJZP 1ZUIPOΤϯδχΞʢػցֶशͰ͖Δͻͱܴʣ ϑϩϯτΤϯυΤϯδχΞ ΞϓϦΤϯδχΞ σβΠφʔ