AmazonのLambdaというオンラインサービスがある。類似のものをMicrosoftやGoogleも提供している。何かというと、ファンクションの実行に対して、呼び出し(実行)回数と、それに伴うリソース(CPU)消費をベースとした従量課金をするというものだ。ここでいうファンクションとは、マイクロサービスをイメージしてもらうとよい。つまり、ごく小さいオンラインサービス、例えばGoogleの検索とかデータベースへの1項目の書き込みとかである。
ファンクションはコードとしてAmazonに保持されているが、実行されない限り課金されない。また逆に、幾ら実行してもサーバ資源を気にする必要はなく、速度が低下する心配もない。いわゆるサーバーレスコンピューティングである。
サーバーレスコンピューティングは、従来で言うスケールアウトの概念と似ている。但しサーバーの量を増減させるという発想ではなく、ユーザはファンクション数の増減のみを意識し、バックグラウンドでサーバがどう増減するかを気にする必要はない、それはAmazonがバックグラウンドで勝手に行う、というものになる。
これは、負荷の予測がつかない新しいWebサービスで特に有効である。たとえばポケモンGOのように、予測の50倍もの負荷が掛かったとしても、クラウドベンダが勝手にスケールアウトしてくれるため、ソース管理者は数人でよいそうだ。
これを個人のデスクトップに使えないかと考えてみる。同じくAmazonの例で言うと、WorkSpacesというサービスがある。これは定額なのだが、年間で借りると結構高い。知っての通り、デスクトップというのはWebサービスのピークに比べれば極めて負荷の低い作業であり、その使用時間の殆どはアイドル(待ち)である。これをファンクションベースで作ってしまえば、借り切るより安い値段で使え、且つピークでもストレスなく作業ができるのではないか。
これを実現するためには、WordサービスとかExcelサービスとかが必要になる。これは今の、例えばOffice 365のようなものではダメで、見かけは同じにするとしても、バックグラウンドのソフトはマイクロサービスベースに書き換える必要がある。
このデスクトップがよいところは、ローミングが実に簡単であるところだ。また、個々のデスクトップに幾らサービスを並べていてもよい。使わない限り料金は掛からないし、権限管理も可能だ。見かけはChrome OSのようなイメージだろうが、インストールは必要ない。VMだと他のユーザが高負荷のときに困るがそのようなことはなく、特定のアプリからの応答が返ってこなくてもハングすることはない。ウィルス関係もサーバ側の問題となるから、個人の手間や必要知識が減ることになる。
欠点らしい欠点と言えば、常にオンラインである必要があることだ。これだけでも一昔前なら致命的だったが、今ではそれほどでもない。必要ならローカルにサーバを置くこともできるが、SIはほぼ必要ない。全てが同じ構成で良いためだ。保守も同様で、完璧にマニュアル化され、ベテランは必要ない。またSIに業務知識が完全に不要となる他、逆に業務内容を知らせたくはないが保守は任せたい、というような用途にも向く。
0 件のコメント:
コメントを投稿