WEB+DB PRESS Vol108 特集3 zozoのシステムリプレースについてを読んで自分なりにまとめた

あくまでも自分用のまとめ

 

フロントエンド

Vue JS でTypescriptを用いて開発している 
 
なかでも
  • vue-class-component 
  • vue-property-decorator 
  • vuex-type-helper
 
などのライブラリを利用している 
 
 
描画の話
ZOZOスーツのフロントエンドの描画でThree.JS を使っている 
 
パフォーマンスなどの観点から内部的にはWeb GLを用いて描画している 
 
具体的には Three.JS のFACE 3という三角形を描画する機能と、Mesh Lineという線を描画するライブラリの機能を利用している
 
  • mesh line
 
 
 
 

バックエンド

言語選択

GoじゃなくてScalaを採用している
 
理由の一つとしてzozoは国際企業路線を強調していくので、i18nなどの国際化の対応のライブラリがまだ十分に安定していないことをあげている
 
 

国際化

国際化対応のためにzozo.com/us/en/のように zozo.com/地域 コード/言語コードでサブディレクトリを切って表現している
 
これはたぶん日本人が使うzozo.jpの話ではなく、zozo.comの話っぽい
 
一般ユーザーはそんな階層でアクセスしてこないので、ブラウザからの地域言語情報やIPアドレスによる地域情報をもとにリダイレクトするという処理をしている
 

運用

ログをうまくやるにはログ収集基盤、ログ収集ツール、可視化ツールの三つが必要になる 
 
それぞれ
  • Elastic Search
  • Log Stash
  • Kibana
というELKスタックが有名である
 
マネージド・サービスとして、Datadogがある
 
いろいろ基盤整えるならDatadogにしても良いんじゃない