APIゲートウェイとは

APIゲートウェイとは何か?| 実際にどのような効果があるのか

アナ・ネト 技術的なこと コメントを残す

"API "という言葉が登場したのは、World Wide Webよりもずっと前のこと。最近になって新しい言葉が登場した。 APIゲートウェイ.APIの概念自体がすでにゲートウェイを示唆しているため、最初は少し奇妙に聞こえます。"

定義APIゲートウェイ」とは?

ご質問いただきありがとうございます。APIという言葉がWWWよりもずっと前に登場したことを覚えている方は多いと思います。また、APIが「Application Programming Interface」の略であることもご存知でしょう。

しかし、最近になって新しい言葉が登場した。"APIゲートウェイ "だ。APIの概念自体がすでにゲートウェイを示唆しているので、最初は少し奇妙に聞こえます。そもそもAPIゲートウェイとは何なのか?

一言で言えば APIゲートウェイは、クライアントとバックエンドサービスの集合体の間に位置する管理ツールです。それぞれが独自のAPIを持っています。

そのため、APIゲートウェイは次のような役割を果たします。 シングル・ポイント・オブ・エントリー は、定義されたAPIのグループのためのものです。この場合のクライアントは、通常、エンドユーザー・アプリケーションとなります。

より技術的な観点から言えば、APIゲートウェイは、異なるAPIをあたかも一つのAPIであるかのように見せることができる特殊なリバースプロキシと見ることもできます。

マイクロサービスの視点

マイクロサービスの文脈では「APIゲートウェイ」という言葉がよく使われます。 マイクロサービスが提供するAPIの粒度は、必要とされるものとは異なることが多い。 これは単純にマイクロサービスのコンセプトに起因するもので、いくつかの小さなピースが小さな異なることをしているのです。

マイクロサービスは一般的にきめ細かいAPIを提供するため、クライアントは複数のサービスとやり取りする必要があります。例えば、ある製品の詳細を簡単に知りたいクライアントは、多数のサービスからデータを取得する必要があります。だからこそ、マイクロサービスの世界ではAPIゲートウェイが意味を持つのです。

このような状況で、マイクロサービス・アーキテクチャの中で、再び APIゲートウェイの目的は、すべてのクライアントに単一のエントリーポイントを提供することです。が、この場合は、これが行われます。 主にクライアントに提供するAPIを簡素化することで.

APIゲートウェイアーキテクチャ

この図では APIゲートウェイはシステムのエッジに位置します。.管理ツールやミドルウェアとして機能し クライアントとバックエンドサービスの集合体の間を仲介する.

これらの バックエンドサービスの変更が可能 の場所、アーキテクチャ、実装(言語、フレームワークなど)を最小限の影響で実現することができます。

建築の見方

古典的なAPIゲートウェイの見方」と呼べるものではありますが、マイクロサービスのAPIゲートウェイの見方に限定する必要はありません。

もできます。 APIゲートウェイをよりアーキテクチャ的に捉え、デザインパターンとしてとらえる.APIゲートウェイ・パターンは、実際には次のように対応しているので、2つの要素があると言えます。 2つの古典的なGang of Fourデザインパターンアダプターとファサード

のように。 アダプターそのため、インターフェイスに互換性がなくても、コミュニケーションやコラボレーションが可能になります。

のように。 ファサードAPIゲートウェイは、アプリケーションの内部アーキテクチャをカプセル化し、クライアントにAPIを提供します。

マイクロサービスの視点でもアーキテクチャの視点でも、APIゲートウェイは常にオーケストレーションの役割を担っています。 と、最終的には物事をスムーズに進めるための存在であるべきだと考えています。しかし、概念や定義から結果につなげるにはどうすればいいのでしょうか?

実用的な結果をもたらすAPIゲートウェイとは

ここでは、より実践的な側面に焦点を当て、どのようにして結果を出すかを考えてみましょう。

そのためには、特定のAPIゲートウェイを使用します。 独自の統合ゲートウェイ「Connect Bridge.Connect Bridgeは、SQLを "話す "シングルエントリーポイントと考えてください。つまり、どのようなコードを使用しても(どのようなプログラミング言語を使用しても構いません)、通常のCRUDステートメントを通じて、あたかもデータベースのようにこのAPIゲートウェイと通信することができます。select, insert, update, delete.

Connect Bridgeには、APIを介して到達したいアプリケーションごとに「トランスレーター」(実際には「コネクター」と呼んでいます)が用意されています。このコネクターは、SQLステートメントをAPIコールに効果的に変換します。

Connect Bridgeを使用することで、必要なコードの量が減り(プロジェクトによっては90%も減ることがあります)、コードの理解とテストが容易になり、バグの数も大幅に減るでしょう。

面白いことに、Connect Bridgeを使っているとき、SQLを使用しているという事実から、ターゲットのシステム・データベース、例えば、Microsoft Exchangeのデータベースを使っていると思ってしまいます。Connect Bridgeはゲートウェイであり、常にAPIを介してターゲットシステムにアクセスしているため、データベースの整合性は安全です。

APIゲートウェイとしてのConnect Bridgeのステップバイステップ

  1. 新規またはレガシーアプリケーションのコード
  2. ターゲットシステムにデータベースのようにアクセスする標準SQLのCRUD文
  3. Connect BridgeはSQLをAPIコールに変換します。
  4. 各ターゲットシステムでは、この翻訳は実際にはコネクタで処理されます。

どのプログラミング言語を使えばいいの?

Connect Bridgeで使用できるプログラミング言語について。先に述べたように、Connect Bridgeでは実質的に 何れのプログラミング言語でも.

に対応しているかを確認する必要があります。 ODBC, JDBCまたは Webサービスです。 それができていれば問題ありません。

例えば、Javaを使いたいとしましょう。そうすると、JDBC接続文字列を生成すれば、Java APIゲートウェイができあがります。

Node.jsを使いたいですか?Web Services Connection Stringを生成すれば、Node.jsのAPIゲートウェイが完成します。

これ以上は言えませんが、もうお分かりだと思いますが、お好きなプログラミング言語をお使いください。

Connect Bridge接続ストリングス

Connect Bridge接続ストリングス

Connect Bridge APIゲートウェイの価格

Connect Bridgeは有料のツールで、価格は使用するコネクタの数や種類、ユーザー数によって異なります。一般的なAPIゲートウェイの価格としては、月額150ユーロからとなっています。価格の詳細については 此処.でご自身でお試しになることをお勧めします。 フリートライアル このようにして、生産性の向上がどの程度になるかを知ることができます。

また、ROIの観点では、ゲートウェイが以下を保証することも考慮する必要があります。 ターゲットシステムがアップグレードされても、最終的なソリューションは機能し続けます。 あなたが書いたコードには何の変更もありません。トラブルはすべてゲートウェイが処理してくれます。

Connect Bridgeの最初のステップ

Connect Bridgeの最初のステップを説明するために、ターゲットシステムの例が必要になります。ここでは、Microsoft SharePointを例に挙げますが、他のシステムでもよいでしょう。

  1. をリクエストします。 フリートライアル.
  2. Connect Bridgeを取り付ける。
  3. Connect Bridge Management Studioを使って設定を処理します。
    • APIゲートウェイの認証には2つのステップがあります。SharePointに接続するために、ユーザーは Connect Bridgeで、その後 Connect Bridge は、SharePointに接続する必要があります。
      • SharePointのアカウントを追加します(「Accounts」-「Add account」)。SharePointの認証情報が必要になります。
      • デフォルトのAdministratorユーザーにそのアカウントの使用を許可するか、新規ユーザーを作成してそのユーザーにSharePointアカウントの使用を許可するか。
    • o [New Query]オプションをクリックし、[Connection Browser]をクリックします。SharePoint」コネクタを探し、「DefaultConnection」にたどり着くまで開きます。その上で右クリックし、「Get Connection string」を選択します。適切な接続文字列をコピーします。この文字列はコードに必要となります。

Connect Bridgeを試す

新規クエリ」オプションを使用して、SharePoint から必要なデータを取得するクエリをテストします。ここでは、クエリの例を挙げて説明しますが、クエリはSharePointから必要なものに合わせて調整する必要があります。

New Query "オプションを選択したら、"Connection Browser "を開きます。

  1. SharePoint コネクタを見つけ、「Tables」オプションが表示されるまで開きます。スキーマにSite_Pagesという「テーブル」が含まれていることが確認できます。
  2. クエリを使用することができます。 SELECT UniqueId, ContentType, Created, Modified, ContentVersion FROM Site_Pages LIMIT 10;
    これにより、SharePointの「Site Pages」リストから最初の10項目が選択されます。

データベースを直接使用しているように見えますが、実際には全く違いますのでご注意ください。Connect Bridgeは、APIのみにアクセスして、あたかもデータベースから来たかのようにデータを表示しています。ここでは自由に探索してみてください。また、利用可能なストアドプロシージャを探索することもできます。クエリを作成したら、それをコピーしてください。あなたのコードで必要になるからです。

また、この時点では、単にテストをしているだけであることに注意してください。Connect Bridge Management Studio は、あなたの遊び場と考えることができます。取得したクエリに満足したら、データベースにアクセスするかのように、コードの中でそれを使用するだけです。非常に簡単なことです。

より詳細な情報については、APIゲートウェイのドキュメントを確認することができます。 フリートライアル.また、APIゲートウェイのログを確認することもできますが、Connect Bridgeでは Connect Bridge 管理スタジオ ナビゲーションバーのオプション「Administration Center - System - Logs」を使用して、「ログ」を表示します。

結論と留意点

APIゲートウェイの概念は、一見すると理論的なものに聞こえるかもしれませんが、Connect Bridgeのような具体的なツールに焦点を当てれば、その効果をイメージすることは難しくありません。

  • 対象となるシステムの数に関わらず、アクセスはAPIゲートウェイに集約される
  • 新しいAPIやプログラミング言語を学ぶ必要がないため、エラーを減らし、生産性を向上させることができます。
  • メンテナンスも一元化され、分離されています。すべてはAPIゲートウェイ側で行われ、ユーザーのコードには関与しません。また、Connect Bridge自身が各ターゲットシステムに対して前方互換性を保証しています。

ご意見・ご要望がございましたら、下記のフォームにご記入ください。

アナ・ネト - テクニカルアドバイザー, 著者

アナ・ネト
技術顧問@Connecting Software

著者。

私は1997年からソフトウェアエンジニアをしていますが、最近は文章を書いたり、人前で話したりすることが好きになりました。  この投稿の内容やConnect Bridgeに関する質問やコメントはありますか? 是非、ご意見をお聞かせください

 ana@connecting-software.com

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です