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
Fulfillment by ZOZOと中国版ZOZOTOWNでのAWS活用事例 / Case...
Search
mokamoto12
July 22, 2020
Technology
1
1.4k
Fulfillment by ZOZOと中国版ZOZOTOWNでのAWS活用事例 / Case of using AWS in FBZ and ZOZOCHINA.
mokamoto12
July 22, 2020
Tweet
Share
More Decks by mokamoto12
See All by mokamoto12
店舗在庫連携のCQRSを支えるメッセージング周りの技術 / Messaging and Patterns in DynamoDB for CQRS
mokamoto12
3
2k
Other Decks in Technology
See All in Technology
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
370
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
110
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.6k
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
590
Why does continuous profiling matter to developers? #appdevelopercon
salaboy
0
190
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
隣接領域をBeyondするFinatextのエンジニア組織設計 / beyond-engineering-areas
stajima
1
270
Taming you application's environments
salaboy
0
190
AIチャットボット開発への生成AI活用
ryomrt
0
170
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
334
57k
KATA
mclloyd
29
14k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
The Cult of Friendly URLs
andyhume
78
6k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
A Philosophy of Restraint
colly
203
16k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
GitHub's CSS Performance
jonrohan
1030
460k
Transcript
Fulfillment by ZOZOと中国版 ZOZOTOWNでのAWS活用事例 株式会社ZOZOテクノロジーズ BtoB事業部 岡元 政大 Copyright ©
ZOZO Technologies, Inc.
© ZOZO Technologies, Inc. 株式会社ZOZOテクノロジーズ BtoB事業部 岡元 政大 • 宮崎生まれ、宮崎育ちのエンジニア。
• Fulfillment by ZOZOの開発、中国版ZOZOTOWNのバック エンドの開発に従事。 • 宮崎のことがそこそこ大好き。 2
© ZOZO Technologies, Inc. アジェンダ • サービス紹介 • Fulfillment by
ZOZO(FBZ)と 中国版ZOZOTOWN(ZOZOCHINA)の構成 • FBZの問題点 • ZOZOCHINAの工夫と課題 • まとめ 3
© ZOZO Technologies, Inc. https://fbz.zozo.com/ • ZOZOTOWN出店企業の自社ECのフルフィルメント支援サービス • 自社EC運営のための撮影・採寸・梱包・配送などの各種フルフィルメン
ト業務を、ZOZOTOWNの物流センター「ZOZOBASE」が受託 • 設備投資・人件費・在庫保管料などの負担なしで、自社ECの運営が可 能 • 各販売チャネル(自社EC・店舗・ZOZOTOWN)の在庫連携が可能。これ により、商品欠品による販売機会の損失を最小化 4
© ZOZO Technologies, Inc. https://zozo.cn/ • 商品の販売に限らず、日本のファッション文化も発信する「ファッション メディアEC」 • 出店ショップ・ブランドの世界観を発信
• 商品は、日本国内の「ZOZOBASE」から中国へ越境発送 • 出店ショップの中国展開をサポート 5
© ZOZO Technologies, Inc. • 「中国アプリ」と「ZOZO」の間のデータ連携に困っていた • FBZで提供している機能とマッチしていた → FBZの開発を行っていたBtoB事業部が開発に関わる
BtoB事業部とZOZOCHINAの関係 6
© ZOZO Technologies, Inc. FBZ、ZOZOCHINAの構成 • サーバーレス • Serverless Framework
• Python • Lambda ◦ FBZ: 約400個 ◦ CHINA: 約90個 7
© ZOZO Technologies, Inc. FBZ、ZOZOCHINAの構成 8
© ZOZO Technologies, Inc. FBZとZOZOCHINAの違い • ミクロで見ると同じ構成 • ZOZOCHINAでは、FBZで課題となっていた点の解決を図った 9
© ZOZO Technologies, Inc. • 1度のリリースに1時間かかる ◦ 1つのサービスに約400個のLambda ◦ CloudFormationスタックにリソースが入り切らない
▪ 10数個のスタックに分けて更新を行っている FBZの問題点 10
© ZOZO Technologies, Inc. FBZの問題点 11
© ZOZO Technologies, Inc. • サービスを小さく分ける ◦ 更新があったサービスだけリリースできる ZOZOCHINAの構成 12
© ZOZO Technologies, Inc. ZOZOCHINAの構成 13
© ZOZO Technologies, Inc. ZOZOCHINAの構成 14
© ZOZO Technologies, Inc. ZOZOCHINAの構成 15 注文サービス 商品サービス 注文登録 販売可能チェック
© ZOZO Technologies, Inc. ZOZOCHINAの構成 16 注文サービス 商品サービス 注文登録 販売可能チェック
© ZOZO Technologies, Inc. • Lambdaを使うメリット(API Gatewayと比べて) ◦ IAMによる認証認可が楽 ▪
API Gatewayでは • リクエストの署名が必要 ▪ Lambdaでは • AWS SDK(boto3)がリクエストの署名を行ってくれる ZOZOCHINAの構成 17
© ZOZO Technologies, Inc. • Lambdaを使うメリット(API Gatewayと比べて) ◦ 管理が楽 ▪
API Gatewayの場合 • エンドポイント、パス、メソッドを指定する必要がある ▪ Lambdaの場合 • Lambdaの名前を指定することで呼び出し可能 ZOZOCHINAの構成 18
© ZOZO Technologies, Inc. • 保守性が上がる ◦ サービス内の構成を把握しやすい • 変更したサービスのみリリースが可能(やろうと思えば)
ZOZOCHINAの構成でよかったこと 19
© ZOZO Technologies, Inc. • 実は変更したサービスだけをリリースしていない ◦ 複数のサービスを1つのリポジトリで管理してる ▪ 仕組み作りに工夫が必要
◦ 言い訳:現状リリースの時間は10分程度と長くはない ZOZOCHINAの課題 20
© ZOZO Technologies, Inc. • FBZ、ZOZOCHINAではAWS Lambdaを活用してる • Lambdaが増えると構成によっては、リリースに時間がかかる •
ZOZOCHINAではサービスを小さく分けた ◦ 個別でリリース可能 ◦ 保守性の向上 • 実際に個別でリリースを行うのは今後の課題 まとめ 21
None