アプリケーションの最新化におけるリスク管理
Published on 28 Aug 2020
Pivotal Cloud Foundry や Red Hat Open shift などのプラットフォーム・アズ・ア・サービス (PaaS) を活用したいと考えている企業は、通常、次の 2 つのアプリケーション環境から始めます。
クラウド ネイティブのベスト プラクティスを使用してゼロから構築できる新しい取り組み (グリーンフィールド)
- クラウドの俊敏性、拡張性、パフォーマンスのメリットを実現するために最新化したい既存のアプリケーション環境(ブラウンフィールド)
- 既存のワークロード (ブラウンフィールド) の多くは、ビジネスにとって重要なアプリケーションであり、大きな収益を生み出し、中断の影響を受けやすいものです。クラウド ネイティブの原則を使用してこれらのアプリケーションを完全に再設計するのが理想的ですが、一般的にはそうすることは現実的ではなく、コスト効率も良くありません。
このブリーフィングでは、モノリシック アプリケーションのリファクタリングをどこからどのように開始するかについて、実用的なアドバイスとベスト プラクティスを紹介します。これらを組み合わせることで、IT チームは最新化プロセスを加速し、その過程で顧客イベントやビジネス プロセスに影響を与えるリスクを軽減できます。
どこから始めますか?
リファクタリングの候補とコンポーネントの特定
始める前に、いくつかの仮定を設定しましょう。
適切に構造化されたモノリスから始めます。
モノリスの要素をリファクタリングするプロセスを開始する前に、モノリスが適切に構造化されていることを確認するための作業を行う必要があります。適切に構造化されたモノリスから始めているかどうかわからない場合は、ソフトウェア アーキテクチャの業界コンサルタントである Simon Brown (@simonbrown) によるビデオ「Modular Monoliths」を見て詳細を確認してください。
DevOps のプラクティスとツールを使用しています:
クラウドネイティブを最大限に活用するには、DevOps のベスト プラクティスに従い、継続的インテグレーション (CI)/継続的デリバリー (CD) 用の自動化ツールを使用する必要があります。詳細については、Gene Kim、Mark Tomlinson、Andi Grabner の著者による電子書籍「Lessons Learned While Writing The DevOps Handbook」をご覧ください。
モノリスとは何ですか? また、それをリファクタリングするにはどうすればよいですか?
モノリスは、今日の分散型で疎結合のアプリケーション アーキテクチャという新しい世界では、悪いものだと考える傾向があります。適切に構造化されたモノリスの場合、唯一の悪い点は、それが単一のコードベースであり、拡張するには全体を拡張する必要があることです。本質的には、「ソフトウェアの観点から見ると、モノリスは、コア コンテキストに絡み合ったビジネス機能または境界付きコンテキストの組み合わせです。アプリをマイクロサービス ベースのアーキテクチャに変換するプロセスでは、これらの境界付きコンテキストをそれぞれ独自のコンテキストに分離する必要があります。」
参照: 柔軟なライセンスを備えた Citrix ADC の 3 つのメリット