アーキテクトは、ビジネスのデジタル戦略を実行するために必要なプロセス ガードレールと技術的機能の定義を支援します。これには、Web アプリや API インフラストラクチャ (API ゲートウェイ、サービス メッシュ、開発者ポータル) をクラウドベースのプラットフォームに進化させることが含まれることがよくあります。
実際には、「リフト アンド シフト」、「リファクタリング」(または「再アーキテクチャ」)、「再プラットフォーム」のアプローチがあり、どのアーキテクチャ ジャーニーを採用するかの決定はいくつかの要因によって決まります。 たとえば、結合と凝集をどの程度安全に実装できるかなどです。 安定したインターフェースと抽象化レベルを提供する、高度に凝集された疎結合の API を目標とする必要があります。これにより、単一の設計変更が行われた場合に必要となる実装変更の連鎖的な影響からシステムを保護できます。 これにより、アーキテクチャのさまざまな部分を独立して進化させることができます。
既存のモノリシック アプリケーションをマイクロサービスに分解してクラウドに移行することは、モダナイゼーションのための賢明な選択です。このアプローチにより、API プロバイダーと API コンシューマーはシステムをより効果的に進化させることができるからです。
ここでは、組織がレガシー システムを API ベースのアーキテクチャにリファクタリングし、クラウド用に再プラットフォーム化することで最新化する架空のケース スタディについて説明します。
レガシーシステムを最新化するとはどういう意味ですか? あらゆるデジタル トランスフォーメーションの取り組みにおいて共通のステップは、顧客が取引を行うための適切なタッチポイントを提供することです。これには、少なくともモバイル アプリの作成が含まれます。しかし、それだけではありません。 新しいデジタル経済では、組織がデジタルマインドシェアと顧客ベースを拡大するために「構築、借用、購入」するにつれて、市場投入までの時間に対するプレッシャーによりサードパーティ統合の数が急増しています。
近代化が実際にどのように行われるかを詳しく見てみると、プロセスとテクノロジーの両方が関係していることがわかります。具体的には、継続的な配信と検証のためのシステムの展開と拡張を自動化すること (プロセス) と、レガシー Web アプリを API ベースのサービス指向アーキテクチャに進化させること (テクノロジー) です。 さらに、API ゲートウェイなどの API インフラストラクチャは、堅牢なトラフィック管理とセキュリティ機能を通じて、クラウド環境への効果的な展開を保証するのに役立ちます。
ここでは、2 つのフェーズを含むこのようなデジタル導入の仮想的なケース スタディを分析します。
この架空の例では、会議システムは、参加者アカウントの作成 (アカウントの作成)、利用可能なセッションの確認 (セッションの確認)、出席の予約 (セッションの予約) などの機能をサポートしています。 顧客は Web ブラウザを介して会議システムと対話します。 たとえば、会議セッションを予約するには、次の手順を実行します。
内部的には、顧客は Webapplicationと対話し、Web アプリケーションは会議applicationに API 呼び出しを送信します。 会議applicationは、SQL を使用してバックエンド データストアをクエリします。
従来の会議システムを最新化する必要が生じているのは、次のようないくつかの要件によるものです。
高レベルの計画がまとめられます。
Attendee コンポーネントを独立したサービスにリファクタリングするための手順が実行されます。 会議システムには現在 2 つのトラフィック インターフェイスがあります。
次に、SSL/TLS 終了、認証、レート制限などのスケーラブルで保守性の高い安全なトラフィック管理を容易にするために、API ゲートウェイがデプロイされます。
次に、サービス メッシュがプロビジョニングされ、従来の会議システムのセッション機能が新しいセッション サービスに再利用されます。 サービス メッシュは、きめ細かなルーティングの制御を提供し、信頼性を確保し、サービス間 API 通信のトラフィックを効率的に仲介して、参加者のセッションの表示と予約を容易にします。
最後に、Attendee サービスと API ゲートウェイをクラウドに移行します。 このアプローチにより、組織が既存のオンプレミス インフラストラクチャから移行する際に、クラウド ネイティブ サービスを活用しながら大幅な手直しを回避できます。
この入門書を実践し、レガシー アプリを最新化するには、API ベースのシステムへの進化に関するベスト プラクティスを学習できる「Mastering API Architecture」電子書籍をご覧ください。