Upgrade to Pro — share decks privately, control downloads, hide ads and more …

(再アップロード)Microservices & APIs

pospome
October 14, 2023

(再アップロード)Microservices & APIs

Cloud Next 2018 わいわい報告会の登壇資料
https://mercari.connpass.com/event/94240/

過去にSlideShareにアップロードしたものをSpeaker Deckに再アップロードしました。

pospome

October 14, 2023
Tweet

More Decks by pospome

Other Decks in Programming

Transcript

  1. 自己紹介 twitter pospome 読み方 ポスポメ 職種 サーバサイドエンジニア 興味 クラス設計全般, DDD

      いわゆるアプリケーションアーキテクチャ ここら辺の技術に興味ある方は   フォローしてくださると嬉しいです
  2. Entity Oriented な API の問題 HTTP がベースなので、 HTTP Method による直感的な操作が可能である。

    一方で “クエリ”, “バージョン” に関しては定義されてい ない。
  3. バージョンの種類 1. Entity Versioning   エンティティのデータ構造が変わる   新エンティティ、旧エンティティが存在する 2. Format Versioning   フィールド名のリネーム

      レスポンス構造の変更   エンティティ自体は1種類しかない 3. Historical Versioning   Entity Version, FormatVersion を統合したバージョン   特定バージョンへの undo, redo に利用することができる   *解釈が間違っているかもしれません
  4. 解決案 ・version-free な URI を用意する。 ・HTTP Header に “Accept-Version” を指定可能にす

    る。 ・オプションとして URL 内に version を含められるよ うにする。