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
2
1.9k
Other Decks in Technology
See All in Technology
あなたのアプリケーションをレガシーコードにしないための実践Pytest入門/pyconjp2024_pytest
mhrtech
3
330
ビジネスに必要な全てを担い、 自分の専門性を見つけ出す フルサイクル開発者のあり方@技育祭 秋 / how-find-own-speciality-in-full-cycle
pei0804
6
840
エムスリーエビデンス創出プロダクトチーム紹介資料 / Introduction of M3 Create Evidence Team
m3_engineering
0
2.1k
Extending kotlin-inject for fun & profit
vrallev
0
120
Wasmコンテナを動かしてみた
stanaka26
0
150
オブザーバビリティの探求 〜性能劣化から始まった旅路〜
sansantech
PRO
3
360
Passkey Autofill に賭けるマネーフォワード ID - Money Forward Tech Day 2024
nov
1
840
Walking the minefield of Service Mesh
drequena
0
170
低コストで実現する社内文書RAG機能を搭載したAIチャットボット開発
takapy
2
180
仕事を前に進めるためのコツ - 判断と決断と共有 / Aim for the goal
soudai
60
22k
Godot Engine でゲームを作ろう!リーダブルノードのススメ
kamera25
0
110
DockerのマルチプラットフォームイメージをGitHub Actionsでビルドして公開する際に、参考にしたドキュメントと便利だったツール
iwamot
3
110
Featured
See All Featured
Thoughts on Productivity
jonyablonski
67
4.2k
The Invisible Side of Design
smashingmag
296
50k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
3
68
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
166
48k
The Illustrated Children's Guide to Kubernetes
chrisshort
47
48k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
The Cost Of JavaScript in 2023
addyosmani
42
5.7k
Optimising Largest Contentful Paint
csswizardry
31
2.8k
GraphQLとの向き合い方2022年版
quramy
43
13k
How to train your dragon (web standard)
notwaldorf
86
5.6k
From Idea to $5000 a Month in 5 Months
shpigford
380
46k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
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