翻訳者 |陸新王 校正 |孫淑娟、梁策 1200億ドル。 Forrester のレポートによると、これが世界のクラウド コンピューティング市場の規模です。 新しいテクノロジーの推進により、ソフトウェア、データ ストレージ、インフラストラクチャはクラウドに向けて大きく進歩し、クラウド環境でのワークロードの開発と実行が容易になりました。 Cloud Native Computing Foundation (CNCF) によると: 「クラウド ネイティブ テクノロジーにより、企業はパブリック クラウド、プライベート クラウド、ハイブリッド クラウドなどの最新の動的環境でスケーラブルなアプリケーションを構築および実行できるようになります。コンテナー、サービス メッシュ、マイクロサービス、不変インフラストラクチャ、宣言型 API はすべてこの分野の例です。 少し奇妙に聞こえるかもしれませんが、心配しないでください。次のセクションで説明します。 さまざまな形態のクラウド コンピューティングは、ビジネス テクノロジーの新たな側面であり、現在では企業の成熟した機能となっています。多くの大企業が、自社で運用するクラウド アプリケーションに依存してビジネスを行っていると言えます。これには、UberやDoorDashのような「スタートアップ」だけでなく、ブローカーに株式取引アプリを提供する金融会社も含まれます。 CNCF のデータによると、現在、さまざまなビジネス機能向けにクラウドネイティブ アプリケーションを構築している開発者は 600 万人を超えています。これらのアプリケーションは DevOps などのベスト プラクティスに基づいているため、基盤となるインフラストラクチャの限界まで拡張できます。 クラウド ネイティブ アプリケーション開発とは何か、そしてそれがどのようにビジネスにさらなる価値をもたらすのかを探ってみましょう。 クラウドネイティブアプリケーション開発とは何ですか?クラウド ネイティブ アプリケーション開発とは、クラウド内でクラウド向けにアプリケーションを開発するプロセスです。 簡単すぎるように聞こえますか? 実際のプロセスは複雑に思えるかもしれませんが、その中心となる考え方は理解するのが難しくありません。さらに詳しく説明すると、クラウド ネイティブ アプリケーションは、継続的な配信を可能にする適応型インフラストラクチャによって管理される、コンテナー化されたマイクロサービスのコレクションです。 従来のプロジェクトの中には、インフラストラクチャの管理をシステム管理者に任せるところもあります。ただし、クラウドネイティブ アプリケーションの開発ライフサイクルでは、オーケストレーション エンジンがプロセスを制御します。つまり、開発者や管理者はリソース割り当ての問題に対処するために時間を費やす必要がなくなります。代わりに、各リソース割り当ての決定は、システム内で事前に構成されたルールに基づいて行われます。 アプリケーションが依存する開発環境または技術的設備は「抽象的」であり、開発者には見えません。選択したテクノロジーを使用してマイクロサービスを開発し、アプリケーションの移植性を高め、コードを迅速に変更できるようになります。これは、迅速な開発、迅速なリリース、ビジネス ユーザーのリアルタイムのニーズへの対応という、アジャイル開発の中核原則の 1 つです。 プロセスの観点から見ると、クラウドネイティブ アプリケーションの開発は次のように進めるべきでしょう。
クラウドネイティブアプリケーションのビジネス価値クラウド ネイティブ アプリケーションは、ビジネスに高効率かつ高パフォーマンスのパラダイムをいくつか提供します。明らかな利点をいくつか挙げます。 1. プロジェクトのライフサイクルがより費用対効果が高いリソース管理は、アプリケーション開発プロジェクトにとって最も重要な課題の 1 つです。経験豊富なチームは、安全のためにリソースを過剰に割り当てる傾向があります。これにより、プロジェクトのライフサイクルはスムーズになりますが、最終的にはアプリケーション開発のコストが増加し、プロジェクトの潜在的な収益が減少します。 クラウド ネイティブの重要な側面は、負荷分散、構成、さらには手動割り当てさえも必要としないことです。クラウド リソースは自律的に管理されるため、テストや展開の必要に応じてスケールアップおよびスケールダウンできます。コスト削減はプロジェクト ライフサイクル全体にわたって蓄積され、クラウド ネイティブ アプリケーション開発プロセスのコスト効率が向上します。 2. 柔軟なアーキテクチャ稼働時間は、データセンター内の仮想マシン (VM) やパブリック クラウドまたはプライベート クラウド内の VDI 環境の稼働時間に直接関係しているため、一部の開発者はクラウド デプロイメントの使用が難しいと感じています。クラウド ネイティブ アプリケーションは移植可能であり、仮想マシンから独立して実行されます。つまり、特定のマイクロサービスが専用の GPU を必要としない限り、アーキテクチャはほとんど依存関係なしでシームレスに実行できます。 依存関係が少なくなると、ワークロードの回復力が高まり、トラブルシューティングがより簡単かつ迅速になります。クラウド インフラストラクチャの依存関係が問題ではなくなったため、プロジェクト マネージャーは他の潜在的な脅威の分離に注力できるようになります。 3. 製品をより早く市場に投入する継続的インテグレーションと継続的デリバリー (CI/CD) は、クラウドネイティブ アプリケーション開発を成功させるための鍵です。これまで、ソフトウェア配信プロセスは段階的に行われ、アルファ版、ベータ版、製品版のリリース前に徹底的なテストが必要でした。 現在、オンデマンドのインテリジェント テストとクラウド環境での継続的な展開により、このプロセスは完全に自動化できます。 DevOps と同期して使用することで、プロジェクト チームはより大規模に共同作業できるようになり、製品リリースのリスクが軽減され、開発から最初のバージョン リリースまでの時間が大幅に短縮されます。 4. サプライヤーに依存しないベンダー ロックインは、Google、Amazon、Microsoft などの主要なクラウド プロバイダーに展開されているアプリケーションを含む、ほぼすべてのアプリケーションにとって大きな問題です。あなたが技術界の大物でない限り、ワークロードをスムーズに実行できるかどうかは、クラウド ストレージ プロバイダーの可用性と効率性にかかっています。 クラウド ネイティブ アプリケーションは移植可能であるため、単一のプラットフォームまたはクラウド インフラストラクチャへの依存が排除されます。基盤となるアーキテクチャに関係なく、開発者はアプリケーションを継続的に更新およびアップグレードし、新しい PaaS および IaaS サービスを利用できます。 クラウドネイティブアプリケーションの主な機能クラウド ネイティブ アプリケーションの特徴は次のとおりです。
これらを総合すると、アプリケーション開発プロセスに多くのメリットがもたらされます。 1. モジュール管理モノリシック アプリケーションの最大の課題の 1 つはスケーラビリティです。最初は、開発チームの規模と専門知識に比例して拡張されます。ただし、機能や特徴が追加されるたびに、モノリシック アーキテクチャはより複雑になります。 その結果、製品ライフサイクル中に、製品所有者がアプリケーション全体を理解できず、開発チームがモジュールが他のモジュールとどのように統合されるかを把握できず、QA チームが機能の変更がアプリケーション全体に与える影響をテストできないという状況が発生します。 アプリケーションに可視性がないことにより、開発者が追加機能に取り組むことができず、さらに多くの問題が発生します。アプリケーションのアーキテクチャが乱雑になり、小さな変更でも大きな障害を引き起こす可能性があります。 これらの構造上の問題は、個別に構築されたモジュールであり、それぞれが特定の機能のみを担当するマイクロサービスを使用することで解決できます。その結果、アプリケーション全体のコードやランタイムを変更することなく、アプリケーションの一部をテストおよび更新できるようになります。 2. 自律的なリソース割り当てクラウド ネイティブ アプリケーションでは、開発者はクラウド インフラストラクチャ プロバイダーのアプリケーション プログラミング インターフェイス (API) と直接対話する必要がありません。代わりに、DevOps チームは、コンピューティング、メモリ、およびストレージ リソースを各コンテナー (アプリケーションが開発されるコンテナー) に割り当てるための集中ポリシーを設定できます。 自動リソース割り当ては、プロジェクトの投資収益率 (ROI) に直接影響します。したがって、割り当てられた資金が小数点 1 桁多いか少ないかによって、申請が承認される可能性が変わります。自律的なリソース割り当てにより、アプリケーションのニーズと利用可能なリソースを正確に一致させることで、これらのリスクが軽減されます。 3. 非同期開発クラウド ネイティブ アプリケーションは、本質的には集約され、コンテナ化されたマイクロサービスです。ユーザーにとって、これは、1 つのマイクロサービスに障害が発生しても、他のマイクロサービスのパフォーマンスに影響しないことを意味します。各マイクロサービスはカプセル化されており、独自の依存関係があるため、1 つのマイクロサービスによってアプリケーション全体が危険にさらされることはありません。 開発プロセスにも同じロジックが適用されます。コンテナ化されたマイクロサービスに共通の依存関係がない限り (その場合は依存関係を複製または分離できます)、非同期的に開発、テストし、運用アプリケーションに追加できます。したがって、統合の問題を心配することなく、複数の機能やアプリケーション モジュールを並行して開発できます。 4. 迅速な拡張性クラウド サービスとマイクロサービスが未来への道を切り開いている一方で、企業には依然として十分に活用されていないレガシー インフラストラクチャ投資が残っています。クラウド ネイティブ アプリケーションは、コンテナーとしてパッケージ化された自律的なサービスのコレクションであるため、従来のインフラストラクチャの仮想マシンとは異なり、動的にスケールアウトおよびスケールイン (コンピューティング リソースまたはストレージ リソースの増減) できます。 クラウドネイティブ アプリケーションでは、レガシー システムおよびデータとの API ベースの統合が可能になります。これにより、中小企業でも従来のインフラストラクチャからクラウド コンピューティングに移行する際に、デジタル変革プロセスを加速できるようになります。 5. 包括的なアプリケーション機能マイクロサービスは、独立したレビュー、分析、評価に適しています。したがって、開発者は、プロジェクト全体のコンテキストだけでなく、独立して各マイクロサービスのパフォーマンスを評価できます。フルスタックの可観測性と特定の監視メカニズムにより、モジュール式で回復力のあるアーキテクチャのおかげで、アプリケーションの調整が容易になります。 結論クラウド ネイティブ アプリケーションは、ソフトウェア開発とクラウド テクノロジーの次世代に向けて設計されています。クラウド ネイティブ テクノロジーは汎用性と俊敏性を備えているため、企業はテクノロジーへの投資をビジネス目標に合わせることができます。中小企業でも大企業でも、クラウド ネイティブをインテリジェントに使用して、ビジネス上の問題を解決し、運用効率を向上させることができます。 翻訳者について51CTO コミュニティ エディターの Lu Xinwang 氏は、1990 年代生まれでキャリア パスを変更したプログラマーです。私はフロントエンド ページに取り組んだり、ビジネス インターフェイスを書いたり、クローラーに取り組んだり、JS を勉強したりしてきましたが、幸運にも Golang に触れてマイクロサービス アーキテクチャへの変革に参加できました。現在は主にJavaを書いており、同社のカスタマイズ可能なローコードプラットフォームのデータエンジン層の設計と開発を担当しています。 クラウドネイティブアプリケーション開発を始める方法 |
<<: Pulsar の展開とオンライン構成を 1 つの記事で学ぶ
>>: クラウドネイティブKubernetes分散ストレージプラットフォームLonghornの初体験
[[391324]] 5Gの商用化が進み、あらゆるものがインターネットになる時代が到来しました。 5...
「スピードがすべて」と強調されるインターネットの世界では、インターネット企業が設立から5年、8年経っ...
QRコードといえば、皆さんもよくご存知だと思います。聞いたことはあるけど使い方が分からないという人も...
著者は、草の根のウェブマスターや起業家がインターネットの発展の波の中で弱い立場にあるグループであるた...
BandwagonHost - 128M ~ 4G のメモリを搭載した VPS で、年間支払額はわず...
検索エンジンのアルゴリズムが継続的に調整されているため、SEO担当者は、ページランキングの決定要因が...
前回の記事で、アートフロントエンドの最適化のポイントについて書いたことを覚えています。時間があるとき...
以前のバージョンとは異なり、新しいハイブリッド クラウド フレームワークは導入が簡単で、「クラウド ...
[51CTO.com からのオリジナル記事] Huya は、ゲームライブストリーミングを主力事業とす...
itldc では、Sysadmin Day というイベントを開催しており、このイベントではすべて...
最近では、多くの公共の場所で無料 WiFi が提供されていますが、インターネット サーフィンの利便性...
みなさんこんにちは。ジュン兄です。優れたメッセージストリーミングプラットフォームとして、Pulsar...
エンタープライズレベルのフルスタッククラウドICTサービスプロバイダーであるQingCloud(qi...
ベトナムのサーバー業者 viethosting をご紹介します。主にベトナムでサーバー\VPS\仮想...
FrontRangeHosting は 40% 割引のプロモーションを開始しました。openvz と...