Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Api gatewayの話

6.615 visualizaciones

Publicado el

Microservices Meetup vol.1での発表資料
#microserv

Publicado en: Tecnología
  • Inicia sesión para ver los comentarios

Api gatewayの話

  1. 1. API Gatewayの話 @charlier_shoe
  2. 2. 自己紹介 早川 博(はやかわ ひろし) @charlier_shoe • 日本オラクルのプリセールス・エンジニア - 製品選定のコンサルティング、アーキテクチャ設計など、販売活動の 技術的支援がミッション - Java SE / Java EE / WebLogic / PaaS… • 本発表は個人の見解であり、所属組織の公式見解ではありません (;´Д`)
  3. 3. 今日の話 BFF(Backend for Frontend) がきっかけ こういうのってミドルウェアがもうあって設定だ けで組めたりしたら楽なんじゃないか。 と思ったけどそんなに単純じゃなかったので ざっくり調べてみたという話です。
  4. 4. API Gateway サービス呼出しを仲介して いい感じにしてくれる SC
  5. 5. 期待すること SC 認証、データ変換、 APIアクリゲーション、エンドポイント集約 アクセス分析 ルーティング、流量制御…
  6. 6. APIアグリゲーション 複数のサービス呼出しをまとめて、適切な形で 返す SC S S
  7. 7. 本 Sam Newman(著) 佐藤 直生(監訳), 木下 哲也(訳) オライリー・ジャパン(2016)
  8. 8. 本の場合 APIのセキュリティ • クライアントにAPIキーを払 い出し • 正しいキーがないリクエスト はGatewayが拒絶
  9. 9. 本の場合 その2 BFF (Backend for Front End) • APIをクライアントに最適化し た形式に変換 • 複数のAPI呼出しを集約
  10. 10. API Gatewayの実装 • クラウドサービス • AWS API Gateway • Netflix API Gateway • Open Source系 • Tyk • Kong • データフェッチ系 [^1] • Falcor • GraphQL • SOA勢 • Oracle Service Bus • IBM Integration Bus [^1] FalcorやGraphQLがAPI Gatewayを謳っているわけではないのでご注意を
  11. 11. Tyk https://tyk.io/ Open SourceのAPI Gateway 認証 データ変換 アクセス分析 ルーティング 流量制御 だいたいできる…ただし
  12. 12. Tyk SC S S APIアクリゲーションはできない… BFFに使うには厳しい
  13. 13. Falcor https://netflix.github.io/falcor/starter/what-is-falcor.html • Client-ServerでJSON-Graph形 式のデータ構造を共有 • ClientはJSON-Graphの必要な 部分を指定してデータを取得 • 一度取得したデータはキャッ シュしておく
  14. 14. Falcor SC S S
  15. 15. Falcor データ・フェッチ 認証 データ変換 アクセス分析 ルーティング 流量制御 「そもそもAPI Gatewayのつもりないんで…」
  16. 16. Oracle Service Bus !! Enterprise Service Bus S S S S S S C 全部できるよ!
  17. 17. ちょっとまってほしい 「1 つのことにすべての希望を託し、ゲートウェイを頼ってすべての段階に対処してい るのを目にしたことがあります。また、誰もが単一障害点があるとどうなるかわかって います。」 「ゲートウェイレイヤはますます多くの機能を担う傾向があり、結局は巨大な結合点と なる可能性があります。」 じゃあBusの冗長化か? 何処までやるべきか…。
  18. 18. どうすればいいか考えてみる S S S C C 認証、エンドポイ ント集約 API アグリゲーション
  19. 19. 結合してもいいところはどこ? プロトコル・スタック(的なもの)を想定しときに、 サービス機能より下位のレイヤーは結合してもよいと 考えては? 認証 エンドポイント解決 サービス サービス サービス
  20. 20. 偉い人も言っている 「OpenID Connect は、インターネット上の 『アイデンティティ層』をなすものです。」
  21. 21. Fin.
  22. 22. https://www.facebook.com/groups/oracle.cloud.developers/ Facebookグループ クラウド・テクノロジーを語ろう。 Oracle Cloud Developers

×