サーバーレス技術の概要と優位性について

ー About Server Less Technology ー

サーバーレスとは

サーバーレスとは、常時サーバーを設置せず、必要なタイミングに秒単位でサーバーリソースを割り当て実行する仕組みです。
従来の常設サーバーの場合、サーバー構築時に負荷のピークを想定し、一定の余裕を持ってサーバーを配置する必要がありました。この場合、サーバーは常に稼働し続ける為、処理負荷に関わらず常にピーク時間と同じサーバー利用料が発生し続ける事になります。 また、想定を超える負荷が発生した場合、処理速度の低下や最悪の場合システムダウンを引き起こす事が懸念されます。 これに対してサーバーレス方式では、必要な時に必要な規模のサーバーを秒単位で割り当てる事が可能になり、「安価」かつ「高品質」なシステムを構築する事が可能になります。

常設サーバーの課題

BOTが制御するWEBブラウザは、使い方によっては1GB以上のメモリを消費します。1サーバー内で複数同時実行を行うと、メモリの枯渇やCPU能力不足で動作が不安定になり、BOTが異常停止してしまう事などが懸念されます。 こちらの解決策として、1サーバー内のWEBブラウザ同時実行数を制限し、想定される最大同時実行数に対して余裕を持った台数のサーバーを事前配置する事が挙げられます。 しかし、配置したサーバーはBOTを実行しない時間帯も24時間稼働し続ける為、高額な維持コストが発生します。また、1台のサーバーを共有し複数のBOTを実行する場合、「相互に処理負荷の影響を受ける」「複数ユーザでサーバーを共有する事によるセキュリティ的なリスク」などが懸念されます。

サーバーレス方式の優位性について

- 信頼性 -

1サーバを共有して複数のBOTを実行するのに比べて、サーバーレス方式では1BOT毎に専有サーバーリソースが割り当てられます。これにより数百件、数千といったBOTを同時実行したとしても、それぞれのBOTの処理負荷が干渉する事なく安定して同時実行する事が可能となります。

- 高可用性 -

常設サーバーでは、サーバー障害等でシステムが停止しないようにサーバーを2系統配置し、冗長化する事で可用性を高めます。
これに対して、サーバーレス方式は常設サーバーが0台で、実行時に瞬時に専用のサーバーリソースを割り当てる為、サーバーダウン等のリスクから開放され、可用性を高める事ができます。

- 堅牢性 -

サーバーレス化では、1BOT毎にCPUやメモリ等のサーバーリソースが専有で割り当てられる為、1サーバー内を複数ユーザで共存する場合に比べてセキュリティ上のリスクを低減させる事ができます。

- 廉価性 -

常設サーバーでは、1日に1時間BOTを実行するだけでも、24時間稼働のサーバー料金が発生します。
これに対してサーバーレスの場合は実行した時間分のみコストが発生する為、大幅なコストダウンが可能となります。 1ヶ月に1時間実行する場合、サーバーコストを約270分の1に抑える事が可能になります。