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
サーバレスで繋がるHTBの内製化ストーリー
Search
Kazuki Miura
June 13, 2023
Technology
0
440
サーバレスで繋がるHTBの内製化ストーリー
https://kn.itmedia.co.jp/kn/articles/2304/14/news110.html
Kazuki Miura
June 13, 2023
Tweet
Share
More Decks by Kazuki Miura
See All by Kazuki Miura
Storage Browser for Amazon S3
miu_crescent
1
140
Amazon Nova Reel でカメラの動きを指示してみた
miu_crescent
0
6
Lambdaと地方とコミュニティ
miu_crescent
2
420
re:Play ってこんなイベントです、オープニングとクロージングも #reinventhokkaido
miu_crescent
0
120
JAWS-UG 事務局 の「これまで」から みんなで「ここから」を考えよう
miu_crescent
2
200
寒冷地稲作の歴史にみるコミュニティ
miu_crescent
2
160
シャアズ ビリービング アワズプレイ
miu_crescent
1
29
完 全 未 経 験 か ら自 社 サ ー ビ ス の 開 発 運用 を行 う ま で
miu_crescent
0
61
Case Study for Repurposing Video Content With Generative AI
miu_crescent
0
10
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
170
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
権威ドキュメントで振り返る2024 #年忘れセキュリティ2024
hirotomotaguchi
2
730
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
100
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
210
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
680
祝!Iceberg祭開幕!re:Invent 2024データレイク関連アップデート10分総ざらい
kniino
2
250
Jetpack Composeで始めるServer Cache State
ogaclejapan
2
170
継続的にアウトカムを生み出し ビジネスにつなげる、 戦略と運営に対するタイミーのQUEST(探求)
zigorou
0
520
.NET 9 のパフォーマンス改善
nenonaninu
0
730
AI時代のデータセンターネットワーク
lycorptech_jp
PRO
1
280
KubeCon NA 2024 Recap / Running WebAssembly (Wasm) Workloads Side-by-Side with Container Workloads
z63d
1
240
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
181
21k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Faster Mobile Websites
deanohume
305
30k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Raft: Consensus for Rubyists
vanstee
137
6.7k
A designer walks into a library…
pauljervisheath
204
24k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
Automating Front-end Workflow
addyosmani
1366
200k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
What's in a price? How to price your products and services
michaelherold
243
12k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Transcript
サーバレスで繋がる HTBの内製化ストーリー 三浦一樹 北海道テレビ放送株式会社 2023.6.13
担当事業内容 01 会社概要 02 内製化 〜勢い編〜 03 04 05 目次 06
まとめ 内製化 〜単発編〜 内製化 〜運用編〜
01 会社概要 ABOUT US
放送システム担当 ↓ データ放送担当 ↓ (いろいろあって) ↓ 開発運用担当 三浦 一樹 -
ABOUT ME - コンテンツビジネス局 ネットデジタル事業部 社内 37歳 秋田→東京→札幌 サウナ大好き
BtoB事業 BtoC事業 テレビのCMや番組提供 番組関連のイベント事業 放送収入 番組の配信や 関連グッズの販売など ファンの方に直接お届けする 放送外収入 北海道を対象とした特定地上基幹放送事業者
01 02 - ABOUT US -
02 担当事業内容 O UR BUSINE SS
動画配信事業 EC事業
動画配信事業 EC事業 8人のチーム エンジニア5名 (内SES 2名) ネットデジタル事業部
マーケティング 8人のチーム エンジニア5名 (内SES 2名) ネットデジタル事業部 他にも、いろいろやってます SNS動画支援 応募データ抽選 CMS管理
イベント用システム
いろいろありました
AWS勉強開始 2017年 初めての アプリケーション 開発 2019年 単発使用の アプリケーション 開発 2020年
定常サービス アプリケーション 開発 2022年 明るい未来 〜2030年 これまでの歩み 〜勢い編〜 〜単発編〜 〜運用編〜
03 内製化 〜勢い編〜 DEVEL O PMENT WITH MOM E N
TUM
勉強しようとおもったきっかけ 放送・通信連携時代のメディア技術開発 フルスタックエンジニア オープンイノベーション クラウド #AWSSummit2017
最初は動画配信から AWS Elemental MediaLive AWS Elemental MediaPackage
もちろん最初は失敗も 配信サービス停止忘れて、40万円の請求、、
やってみた気づき
どうやってお客さんに届ける? AWS Elemental MediaLive AWS Elemental MediaPackage Amazon CloudFront フロントエンドが無いと
サービス提供できない!!
ゼロからの勉強が必要なもの Linux / RDBMS / SQL / Network ... 普通はどうやるの?
Amazon EC2 Amazon RDS Amazon VPC
ゼロからの勉強が必要なもの Linux / RDBMS / SQL / Network ... 普通はどうやるの?
Amazon EC2 Amazon RDS Amazon VPC フロントエンドの前に、これも??
いや、待てよ、、
None
None
VPC LESS VPC LESS VPC LESS OS LESS OS LESS
OS LESS
バックエンドのコード フロントエンドのコード あとは、AWSがあれば アプリケーションが開発できる!
臆せず書いてみよう! まずは、 動くものを作ってみる フロントの全ては この一冊から
最初のアプリケーション開発
単独黒字!社内表彰!
FUKUOKA TOKYO 2019年後半 Serverless Operations さんと初めて出会ったの が福岡
04 内製化 〜単発編〜 SINGL E DEVELOP M ENT
そっからいろいろ開発しました 2020.10〜 有料ライブ配信 ライブコマース ライブコマース イベント 2019.09〜 2019.10 2019.12〜 2020.05
2020.06〜 2020.07 2020.08〜 2020.10 有料ライブ配信 Lift & Shift VODオフロード
そっからいろいろ開発しました 2020.10〜 有料ライブ配信 ライブコマース ライブコマース イベント 2019.09〜 2019.10 2019.12〜 2020.05
2020.06〜 2020.07 2020.08〜 2020.10 有料ライブ配信 Lift & Shift VODオフロード
ライブコマースシステム コロナで中止になった イベントの代替
ライブコマースシステム
ライブコマースシステムの課題 動画が途切れちゃうので リロードさせるのはNG 商品は予め用意するけど、 ほんとにそれを使うかはわからない 好きなタイミングで 商品を動画の下に出したい
GraphQL で Subscription!
AppSync AppSync Amplify Hosting { timeSaleFlg: 0 } {
timeSaleFlg: 1 } shopify GraphQL GraphQLでの操作 <v-if="timeSaleFlg"> 非表示 表示
ライブコマースシステムの課題 好きなタイミングで 商品を動画の下に出したい 動画が途切れちゃうので リロードさせるのはNG 商品は予め用意するけど、 ほんとにそれを使うかはわからない Subscription で簡単に解決! AppSync
amplify-cli で schema 定義して デプロイするだけ!
内製化 〜運用編〜 05 DEVOPS
数ヶ月ごとのリリースを重ねて 2020.10〜 有料ライブ配信 ライブコマース ライブコマース イベント 2019.09〜 2019.10 2019.12〜 2020.05
2020.06〜 2020.07 2020.08〜 2020.10 有料ライブ配信 Lift & Shift VODオフロード
既存の事業について考えてみた
データがバラバラ
オンラインのサービス 動画配信サービス EC それぞれ別のベンダーに運用ごと依頼 データはバラバラ 表示変えるのもCMS非対応部分は要改修
社内でプロジェクト始動 Project VIEWS-ON VIEWS-ON VIEWS-ON Video Event Web Shop ON-Air
社内でプロジェクト始動 動画 イベント ウェブ 買い物
社内でプロジェクト始動 決済 認証 認可 データ 分析 管理 画面
社内でプロジェクト始動 決済 認証 認可 データ 分析 管理 画面 動画 イベント
ウェブ 買い物 共通基盤を作らないとこの先やっていけない
いままでの反省も踏まえて 2020.10〜 有料ライブ配信 ライブコマース ライブコマース イベント 2019.09〜 2019.10 2019.12〜 2020.05
2020.06〜 2020.07 2020.08〜 2020.10 有料ライブ配信 Lift & Shift VODオフロード 完全リニューアル 2021.04〜 2021.08.29 〜 2021.10〜 リニューアル ちょっとだけ サーバーレス化 2022.02.01 〜 2022.04.28 〜
ライブコマースシステム リベンジ 2021.08.29 〜
昨年の問題点 注文がスパイク マイナス在庫が 発生していた
昨年の問題点 回避したい RDSはイヤ! 絶対にムリ! 注文がスパイク マイナス在庫が 発生していた
Serverless Operationsさん に相談だ!
昨年の問題点 DynamoDB の 条件付き書き込み を教えてもらう
とっても黒字!
動画配信事業 EC事業 ベンダーとお別れ サーバレスとSaaSで 内製開発は出来る!
いい感じにまとまった S3 MediaConvert S3 DynamoDB DynamoDB DynamoDB AppSync Lambda API-GW
Step Functions API-GW Amplify Amplify 担当者向け CMS 倉庫 システム BFF Frontend Backend OIDC OIDC OIDC
コストが半分以下 システムダウンなし(Design for Failure) アプリケーション側から逆算して最低限のものを作れる 事業上の試行錯誤がたくさん出来る 1. 2. 3. 4.
よかった点 それなりのコードが書けるようになるまでは時間かかる AWSのアップデートを追いかけるのは大変 リファクタリングと一生付き合う覚悟 答え合わせする先が無いと不安で眠れない ここはAWSさんと、パートナーさんを頼るしかない 大変だった点 内製開発してみて
なにかご質問がありましたら! Thanks! 勉強会コミュニティで会いましょう!