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 Cloud LT #1
Search
Shinya Hiruta
October 06, 2023
Technology
0
95
チャリチャリの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
いろんなバイクを作ってみた話 / Shumi LT #1
hirutas
0
15
EM完全に理解した と思ったけど、 やっぱり何も分からなかった話 / EM Night Fukuoka #1
hirutas
0
330
モバイル端末とIoTハードウェアを組み合わせたサービス設計のあゆみ / mobatiki #3
hirutas
0
27
2023年、福岡にコミットした結果どうだったか? / Geeks Who Drink in Fukuoka 20231130
hirutas
0
9
3Dプリンタと電子工作で光るCharichariオブジェを作った話 / Geeks Who Drink in Fukuoka 20230926
hirutas
0
93
エンジニア向けイベントを初めて主催してみたノウハウ、すべて教えます / DAIMYO Meetup #2
hirutas
0
110
チャリチャリのサービスを支えるプロダクトの仕組みと開発組織の全体像について / neuet × LINE Fukuoka Engineer Meetup
hirutas
0
460
チャリチャリを作った僕の発音は間違っているのだろうか / DAIMYO Meetup #1
hirutas
0
170
Geeks Who Drink in Fukuoka - 2023年度の抱負 edition - / Geeks Who Drink in Fukuoka 20230426
hirutas
0
6
Other Decks in Technology
See All in Technology
汎用ポリシー言語Rego + OPAと認可・検証事例の紹介 / Introduction Rego & OPA for authorization and validation
mizutani
1
190
AWS アーキテクチャ作図入門/aws-architecture-diagram-101
ma2shita
16
6.7k
エンジニアゼロの組織から内製開発の DX をどう実現したのか / How did we achieve DX in in-house development in an organization with zero engineers?
genkiogasawara
7
3.2k
Trade-offs all the way down
_aitor
1
120
[PyconUS 2024] Having fun with Pydantic and pattern matching
enforcerpl
0
190
My road to OSEE Part1
yunolay
0
120
Password cracking: past, present, future
openwall
0
300
日本が誇るイタリアのダンスミュージック!? ユーロビートって何??
minorun365
PRO
2
230
[2024년 5월 세미나] 생성형 AI와 함께하는 데이터 분석가 커리어
datarian
0
1.3k
開発スピードの維持向上を支える、テスト設計の 漸進的進化への取り組み / Continuous Test Design Development for Speed of Product Development
ropqa
0
190
大規模言語モデル (LLM)における低精度数値表現
pfn
PRO
3
860
Domain-driven Design: A Complete Example
ewolff
2
270
Featured
See All Featured
For a Future-Friendly Web
brad_frost
172
9k
Build The Right Thing And Hit Your Dates
maggiecrowley
25
2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
84
45k
How to name files
jennybc
65
94k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
1
130
KATA
mclloyd
16
12k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
The Brand Is Dead. Long Live the Brand.
mthomps
49
31k
Building Adaptive Systems
keathley
32
1.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
8
3.5k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
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 チャリチャリ 採用情報
検索 🔍 続きは 懇親会で!