マイクロサービス:Azure Functions-サーバーにノーと言う

最近、プログラミングには独自のファッション、トレンドセッター、ファッショントレンドなどがあることに気付き始めました。 今では、マイクロサービスの簡単な実装の機会として、マイクロサービスとコンテナについて話すのが流行しています。 ただし、すぐに予約すると、マイクロサービス<>コンテナになります。 コンテナには、マイクロサービスアーキテクチャの実装よりもはるかに多くのアプリケーションシナリオがあります。 そこで、「なぜマイクロサービスとなぜ今なのか」というトピックについて、猫の下で話すことを提案します。







技術開発の傾向により、強力なコンピューティングおよびストレージリソースがローカルおよびクラウドの両方でアクセスしやすくなっています。 以前に、少なくともある種のコンピューティングパワーを見つける必要があった場合、見つけるだけでなく、最大限の利益を得て使用するというタスクがますます頻繁に発生します。



マイクロサービスの明らかな使用法は 、ソリューションをスケーリングする際に利用可能なコンピューティングパワーの使用効率を高めることです。 この場合、マイクロサービスアーキテクチャを使用する利点は、従来のモノリシック(多層)ソリューションと比較してマイクロサービスソリューションの管理に必要な追加のインフラストラクチャが、切り替え時に保存したよりも少ないコンピューティングパワーを必要とする場合にのみ発生することを理解することが重要です。 したがって、一般に、マイクロサービスアーキテクチャを使用する利点は、段落の最初に示したほど明白ではありません。



では、なぜこれがすべてなのでしょうか?



そして、ここで次のレベルの歴史がすでに生じています。 マイクロサービスアーキテクチャは、その切断のために何を許可しますか? モノリシックシステムに必要な時間よりもはるかに短い時間でシステムに新しい機能を追加できます。



したがって、マイクロサービスアーキテクチャを使用すると、ビジネスに理解可能な価値をもたらし、製品の新機能の市場投入までの時間を短縮できます。



古典的な例を見てみましょう。



オンライン支払いシステムを想像してください。 オンライン決済システムの機能が、携帯電話や衛星テレビなどのさまざまな支払いを行う可能性によって測定された過去に飛び込みます。



そのため、新しい支払いパートナーを追加する必要があります。



モノリシックアーキテクチャの場合、私たちは1つの言語、フレームワーク、プラットフォームに縛られており、かなり前に誰かが行った選択を使用して、それぞれの新しい機能を開発する必要があります。 別のプラットフォームとフレームワークを選択しても、開発時間が数倍短縮されます。



さらに、システムを戦闘モードにリリースする前に、良い方法で、システム全体のリリーステストのフルサイクルを実行する必要があります。



システムがマイクロサービスアーキテクチャに基づいている場合、一般に、言語、フレームワーク、またはプラットフォームに縛られておらず、新しい支払いモジュールが相互作用するモジュールのバンドルをテストするだけです。



新しい機能の立ち上げにかかる時間が短縮され、モノリシックシステムを持つ競合他社は引き続き開発とテストを行い、この特定の支払いパートナーを必死に必要とする顧客を失います。 また、選択されたアーキテクチャにより、システム全体ではなく、必要なモジュールのみをスケーリングできるため、この支払いモジュールをより効率的にスケーリングできるため、この顧客とリクエストの流入に耐えます。



当社の製品は優位性を獲得し、売り上げは伸びており、マーケティングは再び語ることができます。



ディレクターは、テクノロジーユニットに追加の資金を提供します。



サーバーレスのコード実行組織



この肯定的なメモで終了することは可能ですが、マイクロサービスアーキテクチャの重要な部分に注意してください。 マイクロサービスは最大限に切断され 、一部のタスクを完了するのに必要な時間はごく短時間です。 そして、ここでストーリーが発生します。もう1つのファッショナブルなストーリー-サーバーレス-コードレス実行のサーバーレス組織。



少し簡略化するために、サーバーまたはコンピューティングパワーを事前に予約せず、準備を整えないという考え方です。 オンデマンドでコードを実行するためのリソースを取得し、実行時間と実行中に使用される一部のリソースに対してのみ支払います。



その結果、コンピューティングリソースが節約され、テクノロジー自体がイベント駆動型アーキテクチャを実装するための便利なパターンになります。 Azureクラウドでは、このパターンはAzure Functionsを通じて実装されます。 関数は、JavaScript、C#、F#を含むさまざまな言語で記述でき、Python、PHP、Bash、およびPowerShellを使用できます。 これらはすべてシンプルなWebインターフェースで実行できます。または、 Visual Studioなどを使用して作成されたプリコンパイル済みコードをダウンロードできます。



関数の簡単な紹介は以下にあります。







一般的な使用シナリオとAzure App Service Technology Platformの概要



また、3月16日11:00(モスクワ時間)にWebセミナーに招待します。このセミナーでは、Azure App Serviceテクノロジプラットフォームを使用するための典型的なシナリオについて説明します。



Azure App Serviceを含むPaaSサービスを使用すると、ビジネスおよび技術的な問題を解決するための新しい可能性が開かれます。 最も難しいのは、利用可能なPaaSサービスの膨大なリストから適切なサービスを選択することです。 これを行うには、各サービスが提供するものと、それが解決する典型的なタスクを理解する必要があります。



参加は無料です。



デザート用



Azure Functionsチャレンジが登場します。AzureFunctionsの開発中にタスクを完了し、開発者のスキルをテストしてバッジを取得できます。 :)



ここでは、Microsoft Azureを無料試用できることをお知らせします。



All Articles