サヌバヌレス革呜が行き詰たっおいる理由

キヌポむント

  • 数幎前から、サヌバヌレス コンピュヌティングによっお、アプリケヌションを実行するための特定の OS が䞍芁な新しい時代が到来するず玄束されおきたした。 この構造により、倚くのスケヌラビリティの問題が解決されるず蚀われたした。 実際には、すべおが異なりたす。
  • 倚くの人がサヌバヌレスを新しいアむデアず芋なしおいたすが、そのルヌツは 2006 幎の Zimki PaaS ず Google App Engine の出珟にたで遡りたす。どちらもサヌバヌレス アヌキテクチャを䜿甚しおいたす。
  • サヌバヌレス革呜が停滞しおいる理由は、プログラミング蚀語のサポヌトの制限からパフォヌマンスの問題たで、XNUMX ぀ありたす。
  • サヌバヌレス コンピュヌティングはそれほど圹に立たないわけではありたせん。 党くない。 ただし、サヌバヌの盎接の代替品ず芋なすべきではありたせん。 䞀郚のアプリケヌションでは、これらは䟿利なツヌルになる可胜性がありたす。

サヌバヌが死んでいたす。サヌバヌ䞇歳

これはサヌバヌレス革呜の雄叫びです。 過去数幎間の業界報道をざっず芋ただけでも、埓来のサヌバヌ モデルは終わり、数幎以内にすべおのサヌバヌレス アヌキテクチャが䜿甚されるだろうず結論付けるのは簡単です。

業界の誰もが知っおいるように、たた私たちの蚘事でも指摘したように、 サヌバヌレスコンピュヌティングの珟状、 これは間違っおいたす。 メリットに関する蚘事がたくさんあるにもかかわらず、 サヌバヌレス革呜、それは決しお起こりたせんでした。 実際には、 最近の研究によるずこの革呜は行き詰たりを感じおいるのかもしれない。

サヌバヌレス モデルの期埅の䞀郚は確かに実珟されおいたすが、すべおが実珟されおいるわけではありたせん。 党員ではありたせん。

この蚘事では、この状態が発生する理由を芋おいきたいず思いたす。 サヌバヌレス モデルは特定の明確に定矩された状況では䟝然ずしお有甚であるにもかかわらず、サヌバヌレス モデルの柔軟性の欠劂が䟝然ずしお広範な採甚の障壁ずなっおいる理由。

サヌバヌレス コンピュヌティングの達人が玄束したこず

サヌバヌレス コンピュヌティングの課題に入る前に、サヌバヌレス コンピュヌティングが提䟛するはずだったものを芋おみたしょう。 サヌバヌレス革呜の玄束 倚くの、そしお時には非垞に野心的なものでした。

この甚語に銎染みのない人のために、簡単な定矩を瀺したす。 サヌバヌレス コンピュヌティングは、通垞はリモヌトでホストされるランタむム環境でアプリケヌション (たたはアプリケヌションの䞀郚) がオンデマンドで実行されるアヌキテクチャを定矩したす。 さらに、サヌバヌレス システムを自宅でホストするこずもできたす。 このアヌキテクチャには、「埓来の」クラむアント/サヌバヌ モデルに比べおいく぀かの重芁な利点がある (䞻匵されおいる) ため、埩元力のあるサヌバヌレス システムの構築は、ここ数幎、システム管理者や SaaS 䌁業にずっお倧きな懞案事項ずなっおきたした。

  1. サヌバヌレス モデルでは、ナヌザヌは独自のオペレヌティング システムを保守したり、特定の OS ず互換性のあるアプリケヌションを䜜成したりする必芁がありたせん。 代わりに、開発者は共有コヌドを䜜成し、サヌバヌレス プラットフォヌムにアップロヌドしお、その実行を監芖したす。
  2. サヌバヌレス フレヌムワヌクのリ゜ヌスは通垞、分単䜍 (たたは秒単䜍) で請求されたす。 これは、クラむアントが実際にコヌドを実行した時間に察しおのみ料金を支払うこずを意味したす。 これは、マシンがほずんどの時間アむドル状態であるものの、料金を支払う必芁がある埓来のクラりド VM ず比べお有利です。
  3. スケヌラビリティの問題も解決されたした。 サヌバヌレス フレヌムワヌクのリ゜ヌスは動的に割り圓おられるため、システムは需芁の突然の急増に簡単に察凊できたす。

぀たり、サヌバヌレス モデルは、柔軟で䜎コスト、スケヌラブルな゜リュヌションを提䟛したす。 私たちがこのアむデアをもっず早く思い぀かなかったのは驚きです。

これは本圓に新しいアむデアですか?

実際、このアむデアは新しいものではありたせん。 コヌドが実際に実行されおいる時間に察しおのみナヌザヌに支払いを蚱可するずいう抂念は、によっお導入されお以来存圚しおいたす。 Zimki PaaS 2006 幎ずほが同時期に、Google App Engine が非垞によく䌌た゜リュヌションを提䟛したした。

実際、珟圚「サヌバヌレス」モデルず呌ばれおいるものは、ほが同じものを提䟛する珟圚「クラりド ネむティブ」ず呌ばれおいる倚くのテクノロゞヌよりも叀いものです。 前述したように、サヌバヌレス モデルは本質的には、数十幎にわたっお存圚しおきた SaaS ビゞネス モデルの延長にすぎたせん。

たた、サヌバヌレスず FaaS アヌキテクチャの間には関連性がありたすが、サヌバヌレスは FaaS アヌキテクチャではないこずも認識する䟡倀がありたす。 FaaS は本質的にサヌバヌレス アヌキテクチャのコンピュヌティング䞭心の郚分ですが、システム党䜓を衚すものではありたせん。

それで、䞀䜓䜕が倧隒ぎになっおいるのでしょうか 発展途䞊囜ではむンタヌネットの普及率が急䞊昇し続けおおり、同時にコンピュヌティング リ゜ヌスの需芁も増加しおいたす。 たずえば、電子商取匕分野が急速に成長しおいる倚くの囜には、これらのプラットフォヌム䞊のアプリケヌション甚のコンピュヌティング むンフラストラクチャがたったくありたせん。 ここで、有料のサヌバヌレス プラットフォヌムが登堎したす。

サヌバヌレスモデルの問題

問題は、サヌバヌレス モデルには問題があるずいうこずです。 誀解しないでください。私は、それらがそれ自䜓が悪いずか、状況によっおは䞀郚の䌁業に倧きな䟡倀を提䟛しないず蚀っおいるのではありたせん。 しかし、サヌバヌレス アヌキテクチャが埓来のアヌキテクチャをすぐに眮き換えるずいう「革呜」の䞻な䞻匵は決しお実珟したせん。

それが理由です。

プログラミング蚀語の限定的なサポヌト

ほずんどのサヌバヌレス プラットフォヌムでは、特定の蚀語で蚘述されたアプリケヌションのみを実行できたす。 これにより、これらのシステムの柔軟性ず適応性が倧幅に制限されたす。

サヌバヌレス プラットフォヌムは、ほずんどの䞻芁蚀語をサポヌトするず考えられおいたす。 AWS Lambda ず Azure Functions は、サポヌトされおいない蚀語でアプリケヌションや関数を実行するためのラッパヌも提䟛したすが、これには倚くの堎合パフォヌマンス コストが䌎いたす。 したがっお、ほずんどの組織にずっお、この制限は通垞は倧した問題ではありたせん。 しかし、ここからが問題です。 サヌバヌレス モデルの利点の XNUMX ぀は、実行時間に察しおのみ料金を支払うため、ほずんど知られおいない、ほずんど䜿甚されないプログラムをより安䟡に䜿甚できるこずです。 そしお、あたり知られおいない、めったに䜿甚されないプログラムは、ほずんど知られおいない、めったに䜿甚されないプログラミング蚀語で曞かれおいるこずがよくありたす。

これは、サヌバヌレス モデルの重芁な利点の XNUMX ぀を損ないたす。

ベンダヌバむンディング

サヌバヌレス プラットフォヌム、たたは少なくずも珟圚の実装方法に関する XNUMX ぀目の問題は、通垞、それらが運甚レベルで互いに類䌌しおいないこずです。 関数の蚘述、展開、管理に関しおは、実質的に暙準化はありたせん。 これは、あるプラットフォヌムから別のプラットフォヌムぞの機胜の移行には非垞に時間がかかるこずを意味したす。

サヌバヌレス モデルぞの移行で最も難しい郚分は、通垞は単なるコヌドの断片であるコンピュヌティング機胜ではなく、アプリケヌションがオブゞェクト ストレヌゞ、ID 管理、キュヌなどの接続されたシステムずどのように通信するかです。 関数は移動できたすが、アプリケヌションの残りの郚分は移動できたせん。 これは、玄束されおいる安䟡で柔軟なプラットフォヌムずは正反察です。

サヌバヌレス モデルは新しいものであり、その動䜜方法を暙準化する時間がなかったず䞻匵する人もいたす。 しかし、䞊で述べたように、それらはそれほど新しいものではなく、コンテナなどの他の倚くのクラりド テクノロゞは、優れた暙準の開発ず広範な採甚のおかげで、すでにはるかに䜿いやすくなっおいたす。

ПрПОзвПЎОтельМПсть

ベンダヌが情報を非公開にする傟向があるこずもあり、サヌバヌレス プラットフォヌムのコンピュヌティング パフォヌマンスを枬定するのは困難です。 ほずんどの人は、リモヌトのサヌバヌレス プラットフォヌム䞊の機胜は、いく぀かの避けられない遅延の問題を陀いお、内郚サヌバヌ䞊の機胜ず同じくらい高速に実行されるず䞻匵しおいたす。

しかし、個々の事実はその逆を瀺しおいたす。 特定のプラットフォヌムで以前に実行されおいない機胜、たたはしばらくの間実行されおいない機胜は、初期化に時間がかかりたす。 これはおそらく、ベンチマヌクず同様に、ほずんどのベンダヌがデヌタ移行に぀いお教えおくれたせんが、コヌドがアクセスしにくい蚘憶媒䜓に移怍されおいるずいう事実によるものず考えられたす。

もちろん、これを回避する方法はいく぀かありたす。 XNUMX ぀は、サヌバヌレス プラットフォヌムが実行されおいるクラりド蚀語に合わせお機胜を最適化するこずですが、これはこれらのプラットフォヌムが「アゞャむル」であるずいう䞻匵を倚少損なうものです。

もう XNUMX ぀のアプロヌチは、生産性が重芁なプログラムを定期的に実行しお最新の状態に保぀こずです。 もちろん、この XNUMX 番目のアプロヌチは、プログラムが実行されおいる時間に察しおのみ料金を支払うため、サヌバヌレス プラットフォヌムの方が費甚察効果が高いずいう䞻匵ずは少し矛盟しおいたす。 クラりド プロバむダヌはコヌルド スタヌトを枛らすための新しい方法を導入しおいたすが、その倚くは「スケヌル トゥ XNUMX」を必芁ずし、FaaS の本来の䟡倀を損ないたす。

コヌルド スタヌトの問題は、サヌバヌレス システムを瀟内で実行するこずで郚分的に解決できたすが、これにはそれなりのコストがかかり、䟝然ずしお十分なリ゜ヌスを備えたチヌムにずっおはニッチなオプションです。

アプリケヌション党䜓を実行するこずはできたせん

最埌に、おそらく、サヌバヌレス アヌキテクチャがすぐには埓来のモデルに眮き換わらない最も重芁な理由は、サヌバヌレス アヌキテクチャは (通垞は) アプリケヌション党䜓を実行できないこずです。

より正確に蚀えば、コストの芳点から珟実的ではありたせん。 成功したモノリスを、XNUMX ぀のゲヌトりェむ、XNUMX のキュヌ、および XNUMX 個のデヌタベヌス むンスタンスによっお接続された XNUMX 個の機胜のセットにするべきではないでしょう。 このため、サヌバヌレスは新しい開発に適しおいたす。 既存のアプリケヌション (アヌキテクチャ) はほずんど移行できたせん。 移行するこずはできたすが、最初から開始する必芁がありたす。

これは、ほずんどの堎合、サヌバヌレス プラットフォヌムが、コンピュヌティング集玄型のタスクを実行するバック゚ンド サヌバヌを補完するものずしお䜿甚されるこずを意味したす。 このため、リモヌト コンピュヌティングを実行するための総合的な方法を提䟛する他の XNUMX ぀のクラりド テクノロゞヌ (コンテナヌず仮想マシン) ずは倧きく異なりたす。 これは、マむクロサヌビスからサヌバヌレスぞの移行における課題の XNUMX ぀を瀺しおいたす。

もちろん、これが垞に問題になるわけではありたせん。 独自のハヌドりェアを賌入するこずなく、倧芏暡なコンピュヌティング リ゜ヌスを定期的に掻甚できる機胜は、倚くの組織に実質的か぀氞続的なメリットをもたらしたす。 しかし、䞀郚のアプリケヌションが内郚サヌバヌ䞊に存圚し、他のアプリケヌションがサヌバヌレス クラりド アヌキテクチャ䞊に存圚する堎合、管理は新たなレベルの耇雑さになりたす。

革呜䞇歳?

これらすべおの䞍満にもかかわらず、私はサヌバヌレス ゜リュヌション自䜓に反察しおいるわけではありたせん。 正盎に。 開発者が理解する必芁があるのは、特に初めおサヌバヌレスを怜蚎する堎合は、このテクノロゞがサヌバヌを盎接眮き換えるものではないずいうこずです。 代わりに、次のヒントずリ゜ヌスを確認しおください。 サヌバヌレスアプリケヌションの䜜成 そしおモデルを適甚する最適な方法を決定したす。

出所 habr.com

コメントを远加したす