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
チャリチャリのIoTプロダクトを支えるGoogle Cloudのインフラ構成 / Public...
Search
Shinya Hiruta
October 06, 2023
Technology
0
190
チャリチャリのIoTプロダクトを支えるGoogle Cloudのインフラ構成 / Public Cloud LT #1
2023/10/06 【福岡現地開催】パブリッククラウドLT会 #01 発表資料
https://dentalight.connpass.com/event/296307/
Shinya Hiruta
October 06, 2023
Tweet
Share
More Decks by Shinya Hiruta
See All by Shinya Hiruta
GPSモジュールを触って学ぶ、衛星測位技術の概要 / Mobility Night #1
hirutas
0
21
いろんなバイクを作ってみた話 / Shumi LT #1
hirutas
0
69
EM完全に理解した と思ったけど、 やっぱり何も分からなかった話 / EM Night Fukuoka #1
hirutas
0
490
モバイル端末とIoTハードウェアを組み合わせたサービス設計のあゆみ / mobatiki #3
hirutas
0
77
2023年、福岡にコミットした結果どうだったか? / Geeks Who Drink in Fukuoka 20231130
hirutas
0
92
3Dプリンタと電子工作で光るCharichariオブジェを作った話 / Geeks Who Drink in Fukuoka 20230926
hirutas
0
190
エンジニア向けイベントを初めて主催してみたノウハウ、すべて教えます / DAIMYO Meetup #2
hirutas
0
160
チャリチャリのサービスを支えるプロダクトの仕組みと開発組織の全体像について / neuet × LINE Fukuoka Engineer Meetup
hirutas
0
680
チャリチャリを作った僕の発音は間違っているのだろうか / DAIMYO Meetup #1
hirutas
0
300
Other Decks in Technology
See All in Technology
Storage Browser for Amazon S3
miu_crescent
1
140
宇宙ベンチャーにおける最近の情シス取り組みについて
axelmizu
0
110
MLOps の現場から
asei
6
630
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
260
サーバレスアプリ開発者向けアップデートをキャッチアップしてきた #AWSreInvent #regrowth_fuk
drumnistnakano
0
190
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
170
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
280
コンテナセキュリティのためのLandlock入門
nullpo_head
2
320
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
150
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
240
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
110
TSKaigi 2024 の登壇から広がったコミュニティ活動について
tsukuha
0
160
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
460
33k
A designer walks into a library…
pauljervisheath
204
24k
Become a Pro
speakerdeck
PRO
26
5k
What's in a price? How to price your products and services
michaelherold
243
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
97
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Fireside Chat
paigeccino
34
3.1k
Building Applications with DynamoDB
mza
91
6.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Optimising Largest Contentful Paint
csswizardry
33
3k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
チャリチャリのIoTプロダクトを支える Google Cloudのインフラ構成 パブリッククラウドLT会 #01 2023/10/06 Shinya Hiruta (hirutas) 1
自己紹介 蛭田 慎也(hirutas) neuet株式会社 VP of Engineering チャリチャリの開発チームを統括 • 略歴
◦ DeNA(2013) → ソウゾウ(2017) ー転籍→ neuet(2020) 2 @hiru_ecn
今日の内容 チャリチャリのサービス紹介 プロダクト・システムの構成 インフラ構成 5年間の運用振り返り 3
サービス紹介 4
国内最速で成長している シェアサイクル 福岡・名古屋・東京・熊本 でサービスを展開 チャリチャリ (Charichari) 5
サービスの沿革 6
日常のご利用を中心に、急速に拡大中 対前年比で 65% 以上の成長 ※1 累計ライド数 1,800 万回 ※2 ライド数の推移
7 ※1) 2021年と2022年の比較。全エリア合計 ※2) 2023年9月時点
プロダクト・システムの構成 8
プロダクト お客さま向け 運営向け 9
お客さま向けシステムの構成要素 サーバ お客さまアプリ スマートロック 10
アプリ、スマートロック、サーバ間の通信 BLE (Bluetooth Low Energy) LTE LTE 位置情報 位置情報 11
運営向けシステム Fleet Manager Portal (Web) 12 運営アプリ (Android + Webview)
インフラ構成 13
Google Cloudの採用 14 背景 • 2017年末、メルカリ(ソウゾウ)社内でGCP ※ の利用実績があった ◦ メルペイの新規立ち上げ等で、
全社的にGCP+Goの知見を高めていくフェーズだった 主な構成 • お客さまアプリ側バックエンド ◦ AppEngine、Datastore(※ Firestore Datastore mode) • 運営側バックエンド ◦ Cloud Run、Firestore (※ Native mode) ※Google Cloud Platform(GCP) は Google Cloud という名称に変更された
バックエンドの概要 15 ※3代目のスマートロックに関する構成。2代目以前は一部異なる
IoTシステムとの連携 • SORACOM Platform ◦ LTE通信 ▪ SORACOM Air for
セルラー (Global) ◦ プロトコル変換、暗号化 ▪ SORACOM Beam 16
IoTシステムとの連携 • ClearBlade IoT Core ◦ Google IoT Core が
2023/8/16 にサービス終了し、乗り換え ◦ 機能 ▪ IoTデバイスの管理 ▪ MQTTブローカー 17
構成の意図、メリット • デバイス側のコンピューティングリソースは貧弱 ◦ 暗号化通信をクラウド側に寄せることで、 デバイス→接続先までは平文で通信可能に(閉域網内) • ファームウェアの更新はコストが大きい ◦ クラウド側の接続先変更もファームウェア修正なしに実現可能
18
耐障害性を高める工夫 • アプリ・スマートロックのいずれかの通信が 正常に行われない場合でも、ライドが終了する仕組み ◦ ライド開始後にアプリを終了されたり、スマホのバッテリーが切れる ケースなども想定 ◦ 位置情報の信用度を内部的に管理し、最も確からしい位置を推定 19
5年間の運用振り返り 20
アプリケーションの構築に注力できた 21 • インフラ専任担当が不在の状態でも、 アプリケーションの構築・実装に注力できた ◦ バックエンドエンジニア(正社員)は過去最大でも2名体制 • 月間利用数は230倍以上に増えたが、インフラは ほぼメンテナンスフリーでスケール
※ した ◦ 月間ライド数 約3,000回(2018/3) → 約740,000回(2023/9) ※当初のインフラ構成を変更することなく、設定パラメータ等の調整のみを実施し、適切にスケールアウトできている状態
課題 • サービス拡大に応じてインフラ費用もスケール中 ◦ 一般的に、パブリッククラウドは従量課金のコンポーネントが多い ◦ 初期はコストメリットが大きいが、 一定以上のトラフィックに増えてきた場合は工夫の余地がある • インターネット上だけではない、
実世界ならではの制約に悩まされることも多い ◦ LTEへの同時接続が難しい問題 ▪ 通信事業者の基地局キャパシティがボトルネック ◦ 新デバイス開発・製造の難しさ ▪ 体制、コスト、発注ロット数、など ◦ ハードウェアの物理的な故障、修理等のオペレーション問題 22
まとめ 23
まとめ 24 パブリッククラウドの活用により、 リアルなまちに溶け込むIoTサービスを 低コスト・短期間で立ち上げることができた
パブリッククラウドを活用して、 リアルな街の移動を支えるサービスを開発したい エンジニア・PdM 大募集中! WE ARE HIRING! 25 チャリチャリ 採用情報
検索 🔍 続きは 懇親会で!