さまざまな要素
これまで、マイクロサービスとは何か、そして最新のMVCアーキテクチャよりもマイクロサービスの基本的なニーズは何かを学びました。この章では、サービスにとって等しく重要なこのアーキテクチャのさまざまな要素について学習します。
サービスのカテゴリ
マイクロサービスという名前では、HTTPプロトコルを介して利用できるサービスであると想定していますが、このアーキテクチャを使用して構築できるサービスの種類を知る必要があります。以下は、マイクロサービスアーキテクチャを使用して実装できるサービスのリストです。
Platform as a Service [PaaS]−このサービス指向アーキテクチャーでは、プラットフォームはビジネスニーズに応じてカスタマイズできるツールとして提供されます。PaaSは、モバイルアプリケーションの開発において重要な役割を果たします。PaaSの最大の例は、Google App Engineです。ここでは、Googleがアプリケーションを構築するためのさまざまな便利なプラットフォームを提供しています。PaaSは元々、開発者に組み込みのアーキテクチャまたはインフラストラクチャを提供するために開発されました。劇的に短縮された時間で、より高いレベルのプログラミングの複雑さを軽減します。以下は、Googleが提供するPaaSのスナップショットです。
Software as a Service [SaaS]− Software as a Serviceは、ソフトウェアが一元的にホストされ、サブスクリプションベースでライセンス供与されるソフトウェアライセンスビジネスです。SaaSは主にブラウザからアクセスでき、人事管理(HRM)、エンタープライズリソースプランニング(ERP)、顧客関係管理(CRM)などの多くの業種で非常に一般的なアーキテクチャパターンです。次のスクリーンショットは、 Oracleが提供するさまざまなSaaS。
Infrastructure as a Service [IaaS]−インフラストラクチャはIT業界で優れた役割を果たします。一部の組織では、クラウドコンピューティングを使用して、サービスとして仮想インフラストラクチャを提供しています。IaaSは、ソフトウェア開発に敏捷性、費用対効果、セキュリティ、パフォーマンス、生産性などをもたらすのに非常に役立ちます。AmazonEC2とMicrosoftAzureは、IaaSの最大の例です。次の画像は、データセンターがIaaSとして提供されているAWSの例を示しています。
Data as a Service [DaaS]−情報技術はデータを扱い、業界のトップリーダーの一部は、データが社会の新たな糧になると信じています。DaaSは、調査と分析のためにデータをビジネスコングロマリットと共有するタイプのサービスです。DaaSは、データアクセス層にシンプルさ、敏捷性、セキュリティをもたらします。以下は、Oracle Data Cloudの例です。これは、独自のビジネスニーズに応じてアクセスまたはライセンス供与できます。
Back End as a Service [BaaS]− BaaSはMBaaSとも呼ばれ、サービスとしてのモバイルバックエンドを意味します。このタイプのサービスでは、アプリケーションのバックエンドは、独自のビジネスベンチャーのビジネスユニットに提供されます。すべてのプッシュ通知、ソーシャルネットワーキングサービスは、このタイプのサービスに分類されます。FacebookとTwitterは、有名なBaaSサービスプロバイダーの例です。
セキュリティ
大量の顧客データを処理する場合、セキュリティは重要な役割を果たします。セキュリティの問題は、市場で利用可能なあらゆる種類のサービスに関連しています。プライベート、パブリック、ハイブリッドなど、使用しているクラウドが何であれ、セキュリティはすべてのレベルで維持する必要があります。セキュリティの問題全体は、大きく次の部分に分けることができます-
Security issue faced by service providers −このタイプのセキュリティ問題は、Google、Amazonなどのサービスプロバイダーが直面しています。セキュリティ保護を確保するには、特にクラウドのコア部分に直接アクセスできるクライアントのバックグラウンドチェックが必要です。
Security issue faced by consumers−クラウドはコストにやさしいため、業界全体で広く使用されています。一部の組織では、ユーザーの詳細をサードパーティのデータセンターに保存し、必要に応じてデータを取得します。したがって、ある顧客の個人データが他のユーザーに表示されないように、セキュリティレベルを維持することが必須です。
上記のセキュリティ問題を防ぐために、組織が使用する防御メカニズムのいくつかを以下に示します。
Deterrent Control −サイバー攻撃を減らすための潜在的な脅威を知ってください。
Preventive Control −クラウドにアクセスするための高レベルの認証ポリシーを維持します。
Detective Control −ユーザーを監視し、潜在的なリスクを検出します。
Corrective Control −さまざまなチームと緊密に連携し、探偵管理フェーズで発生する問題を修正します。