はじめに
こんにちは。ZOZO DevRelブロックの@wirohaです。3/23にJavaのオンラインイベント「ZOZO Tech Meetup〜Java活用事例紹介〜」を開催しました。ZOZOの開発において「Java」にフォーカスした技術選定や設計手法、設計時の考え方などを紹介するイベントです。
登壇内容まとめ
弊社から次の4名が登壇しました。
- ZOZOTOWNの商品の閲覧を支えるJava(技術本部 ECプラットフォーム部 / 藤本 拓也)
- ZOZOTOWNのカート決済システムのリプレイス〜歩みとこれから〜(技術本部 カート決済部 / 高橋 和太郎)
- Spring Boot+Redis Cache 〜検索APIにキャッシュを導入、実装時の工夫や効果〜(技術本部 検索基盤部 / 佐藤 由弥)
- ZOZOTOWNの裏側に迫る!Javaで作られたBFFの開発事例を紹介(ZOZOTOWN開発本部 ZOZOTOWNWEB部 / 小川 雄太郎)
当日の発表はYouTubeのアーカイブで視聴可能です。
ZOZOTOWNの商品の閲覧を支えるJava
藤本よりこれまでと今後の商品基盤を紹介
YouTube 2:51〜
ZOZOではたくさんのリプレイスが進んでおり、Javaで動いているシステムが多数あります。VBScriptからのマイクロサービス化はダイナミックな変化です。課題を随時Issueにしていき週に1回解消する会を行っているそうです。積んだままにしない工夫をきちんと続けるのは当たり前のようで大変なことだと思います。
今後構築していく商品基盤では複数の機能を持っていたAPIを責務ごとに分割していくとのことで、メンテナンスが容易になりそうですね。ArchUnitというライブラリの紹介があり、依存関係をチェックできるのが便利そうでした。今後どうなったかもまたお伝えしたいとのことで楽しみです。
ZOZOTOWNのカート決済システムのリプレイス〜歩みとこれから〜
高橋よりカートという高負荷になりやすいシステムの話
YouTube 19:27〜
カートはセールや販売開始時といった高負荷イベントへの対応が必要です。Cart Queuing Systemを入れることでキャパシティコントロールができるようになりました。現在はAPIからSQL Serverのストアドプロシージャを呼び出すための技術選定をしています。4つの検証対象ライブラリで平均レイテンシやコード量、DB接続回数を比較していました。
事業案件を進めるチームでは業務でJavaに触れる機会が少ないため、外部講師によるJava講習会をしたり、チーム内での勉強会も週に2回程度実施したりと、学習が活発であるのはとても良いと思いました。
続きはこちら