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
2.1k
Other Decks in Technology
See All in Technology
東京Ruby会議12 Ruby と Rust と私 / Tokyo RubyKaigi 12 Ruby, Rust and me
eagletmt
3
870
CDKのコードレビューを楽にするパッケージcdk-mentorを作ってみた/cdk-mentor
tomoki10
0
210
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
170
ABWGのRe:Cap!
hm5ug
1
120
タイミーのデータ活用を支えるdbt Cloud導入とこれから
ttccddtoki
1
160
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
7
6.5k
Evolving Architecture
rainerhahnekamp
3
260
Goで実践するBFP
hiroyaterui
1
120
AWSの生成AIサービス Amazon Bedrock入門!(2025年1月版)
minorun365
PRO
7
470
Building Scalable Backend Services with Firebase
wisdommatt
0
110
20250116_JAWS_Osaka
takuyay0ne
2
200
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
190
Featured
See All Featured
Practical Orchestrator
shlominoach
186
10k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
4 Signs Your Business is Dying
shpigford
182
22k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
How GitHub (no longer) Works
holman
312
140k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Unsuck your backbone
ammeep
669
57k
Making the Leap to Tech Lead
cromwellryan
133
9k
How to Ace a Technical Interview
jacobian
276
23k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
3
180
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