サーバレス対マイクロサービス──現時点で知っておくべきことCW:将来どちらを選択するか

支持を集めつつあるサーバレスコンピューティングを採用すべきか否か。サーバレスとマイクロサービスの長所・短所は何か。現時点で知っておくべきことをまとめた。

2018年03月29日 08時00分 公開
[Neil TurvinComputer Weekly]
Computer Weekly

 サーバレスコンピューティングはまだ開発の初期段階にあるが、その特徴にはマイクロサービスと似通った部分がある。ただし、クラウドでの展開方法は全く異なっている。両方とも長所と短所があるが、サーバレスは魅力的な選択肢として注目度が高まりつつある。

Computer Weekly日本語版 3月20日号無料ダウンロード

本記事は、プレミアムコンテンツ「Computer Weekly日本語版 3月20日号」(PDF)掲載記事の抄訳版です。本記事の全文は、同プレミアムコンテンツで読むことができます。

なお、同コンテンツのEPUB版およびKindle(MOBI)版も提供しています。

ボタンボタン

 その理由は幾つか考えられる。

 両者の差別化要因としてまず挙げられるのは価格だ。サーバレスは従量制の課金システムなので、リクエスト数が少ないアプリケーションや新興企業にとっては魅力的なオプションとなる。また、インフラや仮想マシンはサービスプロバイダーが管理するので、オンプレミスで直接管理するよりも運用コストを削減できる。

 サーバレスは、スケーラビリティも優れている。その性質上、負荷のスパイク(突然の急増)にも容易に対応できるため、迅速かつ透明性の高い方法で自動的に管理できるようになる。唯一、注意が必要な点は、処理可能なリクエストの最大数だ。高負荷システムには不向きだといえる。

 従ってアーキテクチャは複雑になる。さまざまなシステムの寄せ集めとなる場合があるためだ。

 サーバレスは、マイクロサービスよりもさらに細分化された機能を、より高い性能で提供する。その半面、こうした事情からもシステムの複雑性が増すことになる。リクエスト数や実行時間など、さまざまな制限があることに加えて、サポートしているプログラミング言語も多くない。

 コンポーネントは往々にしてクラウドプロバイダー固有のものであり、システムを変更する際に問題の原因となることが多い。そもそもステートレスとして設計されているため、システムのステート(状態)は、外部機能で厳密に管理しなければならない。言い換えると、メモリ内にキャッシュを配置できないということだ。

 さらに、サーバレスは単なるサービスとしての働きだけではなく、定期的に実行するジョブ、イベントハンドラとしても機能する。

サーバレスの複雑性を整理する

 サーバレスを採用した場合に考慮しなければならない、機能の細分化のレベルは、ツーリングやフレームワークにも影響する。

ITmedia マーケティング新着記事

news047.jpg

SASのCMOが語る マーケティング部門が社内の生成AI活用のけん引役に適している理由
データとアナリティクスの世界で半世紀近くにわたり知見を培ってきたSAS。同社のCMOに、...

news159.jpg

SALES ROBOTICSが「カスタマーサクセス支援サービス」を提供
SALES ROBOTICSは、カスタマーサクセスを実現する新サービスの提供を開始した。

news139.jpg

「Fortnite」を活用  朝日広告社がメタバース空間制作サービスとマーケティング支援を開始
朝日広告社は、人気ゲーム「Fortnite」に新たなゲームメタバース空間を公開した。また、...