以前、API について調べているとやたら Apigee が出てきて、すごい気になっていました。
API についてググったら出てくる REST API | OpenAPI | Swagger とは?
そこで Apigee の存在が気になって調べていたら、Cousera からコースが提供されていました。
- API Design and Fundamentals of Google Cloud’s Apigee API Platform
- API Development on Google Cloud’s Apigee API Platform
- API Security on Google Cloud’s Apigee API Platform
そっこーで受講し、そっこーで完了しました。笑
Coursera の多くのコースは 7 日間無償なので、このコースも無償でした。。
そのメモとして本記事を書きましたので、もし同じ様に気になっている方は参考して下さい!!
Apigee の概要
Apigee 社は 2016 年 11 月に Google に買収され、社となりました。製品は変わらずApigee Edge
Apigee が何を提供しているかを一言で説明すると
API マネージメントプラットフォーム
になります。。。
え?
ってなりますよ。私はなりました。。笑
コースを取ったのでもう少し具体的に説明すると
「Apigee プロキシー」と呼ばれる、アプリとバックエンドの中間でそれぞれのやりとりをハンドリングする受付係 (=プロキシー) として提供して、これらの機能を提供しています (もちろん他にもたくさんの機能がありますよ!)。
- トークンを用いた安全な接続 (認証、認可)
- トラフィック管理
- キャッシュの利用
- アクセスデータの解析
- 利用量に応じた課金の設定
この中間に存在する受付係 (=プロキシー) のおかげで、アプリが直接バックエンド API とやりとりする必要がなくなり、バックエンドを抽象化することができます。
筋肉もりもりのデキる受付嬢という感じでしょうか?笑
(的確に訪問者を正しいフロアに案内し、悪いやつは受付通さず、警察に通報する感じ?)
それにより、プロキシーにリクエストを流れば、バックエンドがどうなっているか気にしなくて良いよりかは、バックエンド API とアプリとの間に入るもの = プロキシー
疎結合 = Decoupling
バッククエンド API の変更をProxy
Apigee Edge の機能詳細
Apigee Edge は Apigee が提供しているメイン (?) の製品です。
その機能をざっくりと紹介していきます。
より詳しく知りたい方は Apigee のドキュメントページ (英語) をご確認ください。
-
- Design
- OpenAPI 仕様で設計
- そこから API プロキシを生成
- Develop
- API プロキシの編集
- ビジュアルなデバッガーも提供
- 「XML → JSON 変換」などの機能も提供
- Secure
- データを守るためのいくつものサービスを提供
- Publish
- アプリ開発者向けの API ポータル
- バージョン管理
- Scale
- 高可用性 (High Availability)
- Multi-Region Capability
- Zero Downtime デプロイ
- Monitor & Analyze
- アクセスデータ、パフォーマンスなどのデータの可視化
- Monetize
- 利用量に応じた課金など
- 利用リミットの設定・通知
- Design
API 設計からリリース、そしてその後までフルフルのことができますよ。という感じですね。
コースを取った感想
「API はプロジェクトではなく、プロダクトだ」 という言葉は面白かった。
- プロジェクトは終わることが目的だが、プロダクトは使われることが目的
- プロジェクトの指標はコストや受け入れなどだが、プロダクトの指標は予算やユーザー満足度
- プロジェクトチームは一時的なものだが、プロダクトチームは続くもの。。。などなど
とはいっても総合的には「勉強にはなった」けど、利用はまだまだ先の話かなとと感じてます。
もともと AWS API Gateway でサーバーレスアーキテクチャなシステム作りには興味をもっていたので、その GCP 版ということで理解はすんなりできました。
ただ、AWS API Gateway でなく Apigee でなきゃいけない理由はまだわからず、それであれば使い慣れている AWS API Gateway で良いかなという感じですね。。
Apigee 的には、「API Gateway は API マネージメントプラットフォームの一部」という説明をしているので、AWS が提供していないより多くの機能を提供していると推測しますが。。。分かり次第更新していきますね。。
YouTube でサクッと確認したい方向け
Coursera のコースとは全く関係ないのですが、YouTube で「Apigee API Management Platform Demo」というタイトルで Apigee の全体像が具体的に分かるコンテンツがありましたので、一応載せておきます。
まとめ
今の時代、気になったらオンラインですぐに情報収集 (しかもハンズオン) できるのはすごいですね。1 日で終わったので無償でしたし。。
まだまだわからないことだらけですが、「何がわからないのかわからない」状態ではないので、かなりの進歩かと思います。。笑
引き続き勉強してより有益な情報を提供していきますね!!