この記事は、Ampere Computingの「Accelerating Cloud Computing」シリーズの2番目の部分です。最初のパート[こちら]を読むことができます(こちらのパート1リンクと交換してください)。
あなたが思っているよりも、アプリをクラウドネイティブコンピューティングプラットフォームをAmpereに移行する方がはるかに簡単です。これは、ARMベースのサーバーへのアプリケーションを再配置する作業のほとんどがすでにあなたのために行われているか、それを再コンパイルするためです。
要するに、AmpereのCloud-NativeプロセッサはARM命令セットアーキテクチャ(ISA)を使用しているため、ARMで実行されているソフトウェアもAmpereで実行できます。過去5年間、オープンソースコミュニティのARMに対するサポートは指数関数的に成長し、さまざまな新しいソフトウェアとサービスが出現しました。たとえば、Redis、Nginx、Memcached、MySQL、Cassandraなどのアプリケーションは、すでに実績のあるアームベースのバージョンを提供しています。これは開発者にとって何を意味しますか?企業が使用するソフトウェアのほとんどは、すでにクラウドで実行されているか、クラウドネイティブ環境の準備ができている可能性があります。
オペレーティングシステム(OS):ほとんどすべての利用可能なオペレーティングシステムは、ARM ISAに移植され、アームベースのコアで実行されています。その結果、Ampereのクラウドネイティブプロセッサは、クラウドで使用される主要なオペレーティングシステムのリリースされたバージョンをサポートしています。
信頼性とパフォーマンスをさらに保証するために、アンペアクラウドネイティブプロセッサのオペレーティングシステムのパブリックイメージと事前にパッケージ化されたアプリケーションをテストおよび検証します。このようにして、開発者はアプリケーションがアンペアでシームレスに実行できることを確認できます。
事前梱包されたコード:通常、アプリケーションの大部分は、パッケージ化されたアプリケーションコンポーネントを使用して構築されます。これらのアプリケーションのほとんどのアームベースのパブリック画像(MySQL、PostgreSQL、Cassandra、Nginx、およびSquidからさまざまなアプリケーションへ)は、Ampere Cloudネイティブプロセッサでテストおよび検証されています。したがって、クラウドネイティブコンピューティングプラットフォームのアプリケーションを準備するこの部分は比較的簡単です。すでに提供されているアームベースのミラーを使用するだけです。複雑な移植やソフトウェアの書き換えは必要ありません。
言語のコンパイル:一般的に言えば、Ampereで実行するためにコンパイルする必要があるコードに起因するWebサーバーを再配置するときに発生する重要な問題のほとんど。 GO、C、C、C、Cなどの言語で記述されたコードの場合、既存のバイナリがX86環境用に構築されているため、再配置プロセスには追加のステップが必要です。プログラミング言語の大部分はARMおよびX86で利用可能であるため、ほとんどの再配置の問題は、正しいバイナリを生成するためにAmpereビルドノードでビルドスクリプトを実行する必要があります。
内部/カスタマイズ:カスタムアプリケーションは、解釈、高度、バイナリ、ハードウェア固有の4つのタイプに分けることができます。
アプリケーションをAmpere Cloudネイティブプロセッサに再デプロイするために必要なことを見てみましょう。開発者が自分で管理する必要がないため、大規模なキャッシュを管理するサービスを提供することに専念するMomentoを考えてみましょう。 Momento Serverlessキャッシュは、Twitterの特定のキャッシュニーズ向けに設計されたオープンソースキャッシュエンジンであるPelikanに基づいて構築されています。 Pelikanは最近Rustで完全に書き直されました。 Momentoは、GoogleがホストしたアンペアベースのTau T2A仮想マシンでPelikanを再デプロイしたいと考えています。
赤い展開は、ペリカンとモーメントサーバーレスのキャッシュをアップして実行するためにコードを変更することなく、高速でシームレスです。さらに、Momentoチームは、いくつかの簡単な最適化(コードの調整は不要)を実装することができ、スループットがすぐに3倍になりました。このシリーズのパート4で期待できるパフォーマンスの利点を詳細に見てみましょう。
再展開のもう1つの例はPleskです。 Pleskのソフトウェアにより、人々は中央のコントロールパネルを介してWebインフラストラクチャを管理できます。 Pleskのビジネス開発および戦略的同盟の上級副社長であるLukas Hertigは、再展開プロセスでの彼自身の経験について説明しました。 「最初はクレイジーなアイデアを持っていました。数週間後、私のエンジニアリングチームが戻ってきて、「ああ、今ははるかに速いです!」
PleskはSMBフィールドにサービスを提供しており、クラウドネイティブを選択することは明らかではありません。しかし、Hertigは、再配置の直後に、「私たちは生産において1,000の腕のインスタンスを超えています。アームとオープンソースコミュニティは、ARMクラウドエコシステムの開発と拡大において素晴らしい仕事をしました。もちろん、アプリケーションをクラウドネイティブコンピューティングプラットフォームに再配置する複雑さは、コードを入手する場所によって異なります。ただし、一般的に言えば、クラウドネイティブプロセッサへのほとんどのアプリケーションを再配置することへの投資は最小限であり、アプリケーションの80〜90%を再コンパイルするだけでよいです。
このシリーズの第3部では、クラウドネイティブの再配置プロセスをさらに調査します。以上がクラウドの加速:クラウドネイティブへの投資の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。