The Doppler Quarterly (日本語) 春 2018 | Page 52
教訓 2 - 多くの組織は、従来の RDBMS テクノロジーをコンテナーに組み込むことから開始
しますが、この手法では運用の問題が生じるうえ、ボリュームが大きくなるため、コンテナー
の移行が難しくなります。またこのアプローチでは、データベースにビジネスロジックが組み
込まれてしまう可能性があります。コンテナーのアプローチを使用するときは、他のアプリ
ケーションの機能とは無関係にスケーリングを行うとともに、使用するデータストアを柔軟に
選択できるよう、ビジネスロジックはデータベースの外部に置くべきです。ビジネスロジック
は、パブリッシュ / サブスクライブモデルを通じてアプリケーションの機能の他の部分と統
合し、ワークロードの進化に合わせてアプリケーションの別の層で拡張できるようにするの
が理想的です。
教訓 3 - コンテナーにアプリケーションの状態を保存すべきではありません。コンテナーは、
永続的な情報を保存する目的では使用できない一時的なリソースであるため、代わりにデー
タストアレイヤーを使用して、ワークフローやユーザーエクスペリエンスの管理に必要な状態
を追跡すべきです。
教訓 4 - メッセージングとワークフローは、コンテナーとアプリケーションロジックの外部の
サービスで処理すべきです。これにより、アプリケーションの機能とは無関係な方法でサービ
スを進化させ、スケーリングを行えるようになります。また、より確実で安定したエラー処理と
リトライ処理が可能になります。
これらの教訓は、コンテナーをクラウドに移行するときに、クラウドの2 つの主要な原則 (コン
ピュートとストレージを分離する、モノリシックアプリケーションをより小さい疎結合の機能
モジュールに分解することに重点を置く ) に従うことの重要性を示しています。
「必要なとき
に展開し、終了したら削除する」
という一時的なコンテナーの機能とこれらの教訓を組み合わ
せれば、クラウドとコンテナーの両方に固有の最高の特性を備えたアーキテクチャーをプロ
ビジョニングできます。
50 | THE DOPPLER | 2018 年春号