API Architecture

Overview

API Architecture

6 API Architecture Styles

SOAP

成熟(せいじゅく) した、包括的(ほうかつてき) な、XML ベース。エンタープライズアプリケーションに最適(さいてき)

短所(たんしょ) :

  • 複雑(ふくざつ)
  • 冗長(じょうちょう)

SOAP

RESTful

人気(にんき) があり、実装(じっそう)簡単(かんたん) 、HTTP メソッド。Web サービスに最適(さいてき)

(れい) : Twitter、YouTube

RESTful

GraphQL

クエリ言語(げんご)特定(とくてい) のデータを要求(ようきゅう) 。ネットワークオーバーヘッドを削減(さくげん) し、応答(おうとう)高速(こうそく)

(れい) : Meta(発明(はつめい) )、GitHub、Shopify

短所(たんしょ) :

  • 複雑(ふくざつ) なデータ要件(ようけん)() つアプリ
  • 学習(がくしゅう) 曲線(きょくせん)(きゅう)

GraphQL

GraphQL 2

gRPC

最新(さいしん)高性能(こうせいのう) 、デフォルトで Protocol Buffers を使用(しよう)

gRPC 1

マイクロサービスアーキテクチャに(てき) しています。

短所(たんしょ) : ブラウザサポートが限定的(げんていてき)

(れい) : Netflix - 大量(たいりょう) のサービス(かん) 通信(つうしん)処理(しょり)

gRPC 2

WebSocket

リアルタイム、双方向(そうほうこう)永続的(えいぞくてき)接続(せつぞく)低遅延(ていちえん) のデータ交換(こうかん)最適(さいてき)

WebSocket

Webhook

イベント駆動(くどう) 、HTTP コールバック、非同期(ひどうき)

Webhook

イベントが発生(はっせい) したときにシステムに通知(つうち) します。

短所(たんしょ) : 同期(どうき) 通信(つうしん)即時(そくじ) 応答(おうとう)必要(ひつよう)場合(ばあい) は、これは解決策(かいけつさく) ではないかもしれません。

(れい) :

Webhook 2