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
選択と集中 - 少人数で効率的にアプリケーション・サービスを開発運用するために考えたいこと /...
Search
Hidetaka Okamoto
September 27, 2019
Technology
1
250
選択と集中 - 少人数で効率的にアプリケーション・サービスを開発運用するために考えたいこと / developer summit kansai 2019
Developer summit kansai 2019 A-3
Hidetaka Okamoto
September 27, 2019
Tweet
Share
More Decks by Hidetaka Okamoto
See All by Hidetaka Okamoto
OpenAI APIで API Changelogを要約してみた話 / chatgpt-osaka-1
hideokamoto
0
510
コミュニティ運営から 中の人に変わって感じたこと
hideokamoto
0
66
Developerが Developer Advocateになった話 / dev-rel-meetup-tokyo-71
hideokamoto
0
300
Jamstack開発者のための App Runner入門
hideokamoto
1
450
WordPressでの webサイト制作2022 / ngk2022s
hideokamoto
0
400
JavaScript(TypeScript)で メディアサイトを インフラから構築する方法 / jsconf-jp-2021
hideokamoto
2
4.1k
AWS上でStripeを利用したアプリをより安全にデプロイする方法 /jaws-pankration-2021
hideokamoto
1
180
Shifter Headlessと Headless WordPressの紹介
hideokamoto
0
1.7k
Stripe & Next.js + AWS Amplify で会員 + 定期課金機能 / JP_Stripes20210903
hideokamoto
7
3.1k
Other Decks in Technology
See All in Technology
データモデルYANGの処理系を再発明した話
tjmtrhs
0
180
OPENLOGI Company Profile
hr01
0
60k
Qiita Organizationを導入したら、アウトプッターが爆増して会社がちょっと有名になった件
minorun365
PRO
1
200
Global Databaseで実現するマルチリージョン自動切替とBlue/Greenデプロイ
j2yano
0
140
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
540
手を動かしてレベルアップしよう!
maruto
0
240
20250304_赤煉瓦倉庫_DeepSeek_Deep_Dive
hiouchiy
2
110
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
280
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
2
1.5k
日経のデータベース事業とElasticsearch
hinatades
PRO
0
260
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
140
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
1
140
Featured
See All Featured
BBQ
matthewcrist
87
9.5k
Speed Design
sergeychernyshev
27
810
Music & Morning Musume
bryan
46
6.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
520
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Navigating Team Friction
lara
183
15k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
How GitHub (no longer) Works
holman
314
140k
Transcript
બ ͱ ू த গ ਓ Ͱ ޮ
త ʹ Ξ ϓ Ϧ έ ʔ γ ϣ ϯ ɾ α ʔ Ϗ ε Λ ։ ൃ ӡ ༻ ͢ Δ ͨ Ί ʹ ߟ ͑ ͨ ͍ ͜ ͱ D e v e l o p e r s S u m m i t K a n s a i 2 0 1 9
H i d e t a k a O k
a m o t o • Digitalcube Co. Ltd. • Alexa Campions • AWS Samurai 2017 in Japan • ask sdk(Node.js) Core contributor
None
- 15ਓͷνʔϜ - 100%ϦϞʔτϫʔΫ - 3ͭͷλΠϜκʔϯ ʢຊɺΦϥϯμ ɺϑΟϥσϧϑΟΞʣ -
ຊޠͱӳޠ͕ࠞࡏ͢Δίϛϡχ έʔγϣϯ Small Team
ޮ త ͳ ։ ൃ Λ ਐ Ί Δ
্ Ͱ · ͣ ҙ ࣝ ͠ ͨ ͍ ͜ ͱ
Β ͳ ͍ ͜ ͱ Λ ܾ Ί Δ
͜ ͱ
A g e n d a • Step1: SaaSΛͬͯɺʮΒͳ͍͜ͱʯΛ૿͢ •
ࣗࣾͰ։ൃ͖͢ͱSaaSΛར༻͢Δͷҧ͍ͳʹ͔ʁ • Step2: ࣾͷ։ൃΛSaaSϥΠΫʹͭ͘Δ • APIυϦϒϯͳϚΠΫϩαʔϏεΛߏங͢Δ • Conclusion: ԕ͘ʹߦ͔͘ɺૣ͘ߦ͔͘
A g e n d a • Step1: SaaSΛͬͯɺʮΒͳ͍͜ͱʯΛ૿͢ •
ࣗࣾͰ։ൃ͖͢ͱSaaSΛར༻͢Δͷҧ͍ͳʹ͔ʁ • Step2: ࣾͷ։ൃΛSaaSϥΠΫʹͭ͘Δ • APIυϦϒϯͳϚΠΫϩαʔϏεΛߏங͢Δ • Conclusion: ԕ͘ʹߦ͔͘ɺૣ͘ߦ͔͘
S a a S Λ ͬͯɺ ʮ Β
ͳ ͍ ͜ ͱ ʯ Λ ૿ ͢ • ࣗͰΔ͖͔ɺΔ·͍͔ • Ϗδωεͷதͱඞཁͳͷͷҧ͍ • ShifterͰબΜͩͷɾબͳ͔ͬͨͷ • Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
Making Your Own Power Doesn't Make Your Beer Taste Better
ࣗͷྗͰΔ = ࠷্ͱݶΒͳ͍ ੲ: ϏʔϧࣗલͰൃిػΛॴ༗ ࠓ: ిؾൃిॴ͔Βങ͏ͷ -> ిؾͷॴ༗͔Βར༻ͷมԽ
ʮ ͋ Δ ػ ೳ ʯ ͷ ॴ ༗ ͱ
ར ༻ • ઃඋΛ༻ҙ͢Δ͜ͱͰɺࣗڅ͕ࣗՄೳʹͳΔ -> ॴ༗ • ΦϯϓϨαʔόʔ / ࣗࣾ։ൃ / ϑϧεΫϥον • ୈࡾऀ͕༻ҙͨ͠ͷΛೖख͢Δ -> ར༻ • Ϋϥυαʔόʔ / SaaS / ϑϨʔϜϫʔΫ
ʮ ͋ Δ ػ ೳ ʯ ͷ ॴ ༗ ͱ
ར ༻ : ϝ Ϧ ο τ ͱ σϝ Ϧ ο τ • ॴ༗ɿ҆৺ײॊೈͳΧελϚΠζੑͷ֬อͳͲ͕ظͰ͖Δ • ॴ༗ɿ४උʹ࣌ؒͱίετ͕͔͔Δ / ϝϯςφϯεͷඞཁੑ • ར༻ɿඞཁͳ࣌ʹඞཁͳ͚ͩखʹೖΕΔ͜ͱ͕Ͱ͖Δ • ར༻ɿαʔϏεଆͷ༷ͷґଘ / োͷυϛϊ͠
ࣗ Ͱ ༻ ҙ ͢ Δ ͔ ɺ Կ
͔ Λ ར ༻ ͢ Δ ͔ • APIϕʔεͷαʔϏεͷ૿ՃɿStripe / Auth0 / AWS / etc… • ෳͷAPIΛΈ߹ΘͤͰɺϏδωεϩδοΫͷߏங͕Մೳʹ • ඞཁͳ෦Λ֎ͭͭ͠ɺࣗͷΛΈཱͯΔ • ʮΈཱ͍ͯͨͷʯͷͨΊʹ͑Δͷͳʹ͔ʁ
S a a S Λ ͬͯɺ ʮ Β
ͳ ͍ ͜ ͱ ʯ Λ ૿ ͢ • ࣗͰΔ͖͔ɺΔ·͍͔ • Ϗδωεͷதͱඞཁͳͷͷҧ͍ • ShifterͰબΜͩͷɾબͳ͔ͬͨͷ • Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
ॴ ༗ ͢ ͖ ػ ೳ ͱ ඞ ཁ ͳ
ػ ೳ • ͦͷϏδωεͷجװ -> ࣗલͰ༻ҙ͢Δඞཁ͕͋Δ • αʔϏεԽ͢ΔͨΊʹඞཁͳػೳ -> ར༻Λݕ౼͢Δ • ΞΧϯτཧ / ܾࡁ / αʔόʔ / GUI / etc… • ʮͳ͍ͱࠔΔ͕ɺͲͷϏδωεͰඞཁͳͷʯ
Ͳ ͜ · Ͱ Λ ॴ ༗ ͱ ͢ Δ
͔ ʁ • ίΞͱͳΔγεςϜࣗͰ࡞Δ͔͠ͳ͍ • γεςϜΛߏ͢ΔͷɺSaaSΛར༻Ͱ͖Δ • ೝূ / ೝՄ / ܾࡁͳͲɺʮඞਢ͚ͩͲίΞ͡Όͳ͍ʯΛݟۃΊΔ • ίΞ෦ͷ։ൃʹूத͢ΔͨΊʹɺSaaSΛར༻͢Δ
S a a S Λ ͬͯɺ ʮ Β
ͳ ͍ ͜ ͱ ʯ Λ ૿ ͢ • ࣗͰΔ͖͔ɺΔ·͍͔ • Ϗδωεͷதͱඞཁͳͷͷҧ͍ • ShifterͰબΜͩͷɾબͳ͔ͬͨͷ • Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
• Stripe ϞχλϦϯάɾUI։ൃɾαϙʔτσεΫɾCRM … (શͯSaaS)
• Ϛελొ • ଟ௨՟ܾࡁ • ٻཧ • ෆ৹ٻνΣοΫ • CRMͱͷ࿈ܞ
՝ۚɾٻཧStripe
• PRͷࣄલςετ • ΞϓϦͷϏϧυ • σϓϩΠ σϓϩΠɾϫʔΫϑϩʔCircle CI
S a a S Λ ͬͯ Α ͔ ͬ
ͨ ͜ ͱ • ։ൃ͕ͱʹ͔͘ૣ͍ • ʮ͜ͷػೳཉ͍͠ʯ -> ʮAPI͋ΔͶʯ -> ʮ͡Ό͋ͦΕΑͿΘʯ • SaaSଆͷϞσϧΛϕʔεʹγεςϜͷઃܭ͕Ͱ͖Δ • ϩά / Ϣʔβʔཧ / ϚωίϯͳͲͷʮ͋Δͱخ͍͠ʯػೳ͕͋Δ • ࣗલͰ࡞Δͱ͍͍ͩͨޙճ͠ʹ͞Ε͕ͪͳͷ͕͍͍ͩͨ͋Δ • GDPR / PCI DSSͳͲͷΊΜͲ͍͘͞ ॏཁͳػೳ͍͍ͩͨαϙʔτ
S a a S Λ ͬͯ ͭ Β ͍
͜ ͱ • SaaSͷ੍༷͕ͦͷ··ϓϩμΫτͷ੍ݶʹͳΔ • ্ݶ੍ݶͷ֬ೝ࿙ΕͰେͳ༷࠶ઃܭ͕͓͖Δ͜ͱ • ্ݶ੍ݶඞͣ֬ೝ͔ͯ͠Βಈ͘ɻಈ࡞ࢼ͓ͯ͘͠ • োͷϐλΰϥεΠον • 1 SaaSͷোͷר͖ఴ͑Ͱશମ͕མͪΔՄೳੑ͕͋Δ • API͕ΤϥʔΛฦͨ࣌͠ͷᷖճ࿏͋Δ͔ʁ͚ͦͩ͜ࡴͤΔ͔ʁ
• πΫϧ͔Βɺ͏·͘πΧ ϑϥοτԽ͢Δੈքͱ σδλϧτϥϯεϑΥʔϝʔγϣϯ • Agility ͕ڧ͞ΛੜΉ࣌ ʮେ͖͍ͷ͕খ͍͞ͷʹউͭʯͷͰͳ͘ ʮ͍ͷ͕͍ͷʹউͭʯ
S a a S Ͱ ࢼ ͠ ɺ μϝ ͳ
Β͢ ͙ ࣺ ͯ Δ • ࢼݧӡ༻͢ΔػೳΛҰ͔Β࡞ΔͷϦεΫ͕େ͖͍ • ैྔ՝ۚܥSaaSࣙΊ͘͢ɺτϥΠΞϧ͕͋Δ͜ͱଟ͍ • ʮ·ͣSaaSͰࢼ͢ʯ -> ʮΓͳ͍͔Β࡞Δʯͱ͍͏அ • SaaSΛ׆͔͢͜ͱͰɺΞδϦςΟΛߴΊΔ
S a a S Λ ͬͯɺ ʮ Β
ͳ ͍ ͜ ͱ ʯ Λ ૿ ͢ • ࣗͰΔ͖͔ɺΔ·͍͔ • Ϗδωεͷதͱඞཁͳͷͷҧ͍ • ShifterͰબΜͩͷɾબͳ͔ͬͨͷ • Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
Ϣ ʔ β ʔ ʮ ମ ݧ ʯ ʹ
͓ ۚ Λ ͏ • ΧλϩάεϖοΫੑೳ͚ͩͰબͿέʔε͕ݮগ • ʮͦΕΛ͏͜ͱͰɺͲΜͳମݧ͕Ͱ͖Δ͔ʁʯ • ϢʔβʔͷٻΊΔମݧৗʹมԽ͢Δ • มԽ͢ΔظʹԠ͑ΔͨΊʹɺSaaSԽͯ͠ܧଓతͳؔΛࢦ͢
“ͷͮ͘Γͷ߹ɺͲ͏ͯ͠ςΫϊϩδʔʹภΓ͕͋Δ͕ɺϢʔβʔ͔ Βͯ͠ΈΕΧλϩάʹৄࡉʹܝࡌ͞Ε͍ͯΔεϖοΫͳͲɺϋϯόʔΨʔ ͷԣͷϙςτ΄ͲͷՁແ͍ɻͦΜͳΤϯδχΞͷΤΰͷΑ͏ͳͷ ·ͣΕͯɺސ٬͕৺Α͍ͱࢥ͑ΔαʔϏεઃܭΛߦ͏͖ͩɻ” ςΫϊϩδʔͰͳ͘ސ٬ࢹͰαʔϏεΛߟ͑Δ
A g e n d a • Step1: SaaSΛͬͯɺʮΒͳ͍͜ͱʯΛ૿͢ •
ࣗࣾͰ։ൃ͖͢ͱSaaSΛར༻͢Δͷҧ͍ͳʹ͔ʁ • Step2: ࣾͷ։ൃΛSaaSϥΠΫʹͭ͘Δ • APIυϦϒϯͳϚΠΫϩαʔϏεΛߏங͢Δ • Conclusion: ԕ͘ʹߦ͔͘ɺૣ͘ߦ͔͘
a s a S e r v i c e
Խ ͭ͠ ͭ ͋ Δ ੈ ք https://boxil.jp/mag/a3600/
a s a S e r v i c e
Խ ͭ͠ ͭ ͋ Δ ੈ ք • Backend as a Service • Platform as a Service • Infrastructure as a Service • Software as a Service • etc…
D i g i t a l c u b
e ͷ a s a S e r v i c e Խ • AWS Marketplace AMI (AMIMOTO): Machine Imageͷఏڙ • AMIMOTO Managed: ϚωʔδυϗεςΟϯάʢSaaSԽʣ • Shifter: WordPressͷSaaSԽʢମݧʹϑΥʔΧεʣ
খ ͞ ͳ α ʔ Ϗ ε ͷ ू ·
Γ ʢ ܈ ʣ ͷ Α ͏ ʹ ͭ ͘Δ • υϝΠϯ / ػೳϨϕϧͰ̍ͭͷαʔϏεԽ • API ΠϕϯτϕʔεͰαʔϏεΛར༻͢Δ • microͳserviceΛΈ߹Θͤͨߏ -> microservices • খ͞ͳSaaS / FaaSΛ࡞ͬͯɺͦΕΛΈ߹ΘͤΔܗͷ࣮
• AWSΛશྗར༻ • APIΛΈ߹Θͤͨ ɹΞϓϦߏ جຊΞϓϦέʔγϣϯ (Serverless Architecture)
• React (SPA / GUI) • Serverless FW (API) •
Netlify (Server) • AWS (APP Server) User Interface
m i c ro s e r v i c
e s ͷ ϝ Ϧ ο τ • αʔϏε୯ҐͰͷσϓϩΠɾมߋ͕ՄೳʹͳΔ • ґଘؔΛݮΒ͢͜ͱͰɺςετ͘͢͠ͳΔ • ػೳνʔϜɺαʔϏεͷੑ࣭ʹٕ͋ͬͨज़͕ར༻Ͱ͖Δ • ΠϕϯτυϦϒϯʹ͢Δ͜ͱͰɺαʔϏεؒͷґଘݮΒͤΔ
m i c ro s e r v i c
e s ͷ σϝ Ϧ ο τ • ίʔυϕʔε / Ϧιʔεͷ͕େʹͳΔ • ґଘؔΛݮΒ͢͜ͱͰɺςετ͘͢͠ͳΔ • ػೳνʔϜɺαʔϏεͷੑ࣭ʹٕ͋ͬͨज़͕ར༻Ͱ͖Δ • ΠϕϯτυϦϒϯʹ͢Δ͜ͱͰɺαʔϏεؒͷґଘݮΒͤΔ
m i c ro s e r v i c
e s ͷ σϝ Ϧ ο τ • ίʔυϕʔε / Ϧιʔεͷ͕େʹͳΔ • ݁߹ςετͷෳࡶԽ • ػೳνʔϜɺαʔϏεͷੑ࣭ʹٕ͋ͬͨज़͕ར༻Ͱ͖Δ • ΠϕϯτυϦϒϯʹ͢Δ͜ͱͰɺαʔϏεؒͷґଘݮΒͤΔ
m i c ro s e r v i c
e s ͷ σϝ Ϧ ο τ • ίʔυϕʔε / Ϧιʔεͷ͕େʹͳΔ • ݁߹ςετͷෳࡶԽ • ʮͦͷਓ͔͠Θ͔Βͳ͍ΞϓϦʯͷੜ • ΠϕϯτυϦϒϯʹ͢Δ͜ͱͰɺαʔϏεؒͷґଘݮΒͤΔ
m i c ro s e r v i c
e s ͷ σϝ Ϧ ο τ • ίʔυϕʔε / Ϧιʔεͷ͕େʹͳΔ • ݁߹ςετͷෳࡶԽ • ʮͦͷਓ͔͠Θ͔Βͳ͍ΞϓϦʯͷੜ • ϐλΰϥεΠονతͳෆ۩߹ͷՄೳੑ
m i c ro s e r v i c
e s ۜ ͷ ؙ Ͱ ͳ ͍ • ࠓ·Ͱखؒͩͬͨ࡞ۀΛޮԽͰ͖Δ • microservicesͷͨΊͷ࡞ۀ͕৽͘ൃੜ͢Δ • ϞϊϦγοΫͷཧίετ vs microservicesͷཧίετ
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ܕϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
Ϧ ϯ τπ ʔ ϧ ʹ Α Δ ه ๏
ͷ ඪ ४ Խ • ESLintͰίʔσΟϯάελΠϧΛඪ४Խ • ϧʔϧJavaScript Standard StyleͰڞ௨Խ • git hookCIͰνΣοΫ͠ɺϧʔϧҧΛϦδΣΫτ͢Δ • ॻ͖ํͷΫηΛۉ͢͜ͱͰɺ୭ͰಡΊΔɾ৮ΕΔίʔυʹ͢Δ
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
ςε τ ܕ ʹ Α Δ ഁ յ త
ม ߋ ͷ ݕ ɾ ༧ • ࣮ऀ͕ʮ͜͏͑͜͏ಈ͘ʯͱ͍͏هΛ͢ • ؔ୯ҐͷϢχοτςετɾαʔϏε୯Ґͷ݁߹ςετ • ଞͷ࣮ऀ͕৮Δ࣌ɺͳʹΛյ͔ͨ͠ΛΘ͔Γ͘͢͢Δ • ςετέʔεΛݟΔ͜ͱͰɺ࣮ͷѲͰ͖Δ • ಉ༷ʹܕΛ͚ͭΔ͜ͱͰɺޡͬͨܕΛࢦఆͨ͜͠ͱʹؾ͚ͮΔ
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
࣮ ͢ Δ ͷ ͕ త ɺ फ
ڭ ઓ ૪ ͠ ͨ ͘ ͳ ͍ • ʮϧʔϧʹै͍ͬͯΔ͔൱͔ʯͷࡋఆػցతʹߦ͏ • GitHubͰmasterϒϥϯνΛอޢ • CIͷpassΛmergeͷ݅ʹ͢Δ • ʮCI͕μϝͬͯݴͬͯΔ͔Βํͳ͍ʯ • ػցతʹͰ͖ͳ͍ϨϏϡʔͷΈਓྗͰ͓͜ͳ͏
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
࣮ ͠ ͨ ਓ ͩ ͍ ͨ ͍
Կ Λ ॻ ͍ ͨ ͔ ֮ ͑ͯ ͍ ͳ ͍ • TSDocͳͲͰιʔεʹίϝϯτΛ͢ • APISwaggerͰϦΫΤετ / ϨεϙϯεΛ໌ࣔ • LambdaInvokeαϯϓϧΛ༻ҙ͢Δ • λεΫͷҙਤ࡞ۀΛBacklogGitHubͷIssue / PRʹ͢
A g e n d a • Step1: SaaSΛͬͯɺʮΒͳ͍͜ͱʯΛ૿͢ •
ࣗࣾͰ։ൃ͖͢ͱSaaSΛར༻͢Δͷҧ͍ͳʹ͔ʁ • Step2: ࣾͷ։ൃΛSaaSϥΠΫʹͭ͘Δ • APIυϦϒϯͳϚΠΫϩαʔϏεΛߏங͢Δ • Conclusion: ԕ͘ʹߦ͔͘ɺૣ͘ߦ͔͘
ϚΠΫ ϩ α ʔ Ϗ ε ͡ Ό ͳ ͍
ํ ͕ Α ͍ ͜ ͱ ͋ Δ • WordPress / DrupalͳͲͰૉૣ͘࡞Δͷ༗ޮͳखஈ • ϞϊϦγοΫ͔ͭख׳ΕͨߏͰૉૣ͘ϦϦʔε͢Δ • APIΤϯυϙΠϯτΛఏڙ͢Δ͜ͱͰɺas a ServiceԽՄೳ • ૉૣ͘࡞ͬͯϦϦʔε -> APIԽ -> ϚΠΫϩαʔϏεׂ
– Ξ ϑ Ϧ Χ ͷ ᷾ Α Γ “ૣ͘ߦ͘ͳΒ̍ਓͰ͍͚ɺ
ԕ͘ʹ͍͘ͳΒΈΜͳͰ͍͚”
ૣ ͘ ਐ Ή ͖ ͔ ɺ ԕ ͘
Λ ࢦ ͢ ͖ ͔ • ̌ -> 1ͷϞϊϦγοΫ͕ૣ͘ͳΓ͍͢ • CMS / FWͳͲͷڊਓͷݞʹΕΔ༏Ґੑ • API / ϚΠΫϩαʔϏεԽ͢Δ͜ͱͰɺʮ̍ͭͷ͜ͱΛ͏·͘Δʯ • ͋ͳͨͷߦ͖͍ͨॴͲ͏ͬͯਐΈ·͔͢ʁ • Far Together