フリーエンジニア考察
サーバーレスアーキテクチャー
今回のお題『サーバーレスアーキテクチャー』
「サーバーレスアーキテクチャー」とは、本来ディベロッパー側が管理しなくてはならなかったサーバーやミドルウェア、仮想マシーンのOSに加え、イベントを発生させるアクションを受けアプリを起動させる関数の呼び出しまでプロバイダーが変わりに行ってくれるスタイルです。
サーバーレスアーキテクチャーと仮想サーバーの違い
わかりやすいよう、同一のプロバイダーが提供しているサービスで比べて見ましょう。アマゾンが提供しているサービスのサーバーレスアーキテクチャー「AWS Lambda」と仮想サーバー「Amazon EC2」です。
「Lambda」はスクリプト実行環境での開発で、ディベロッパーはプログラムアプリのみを管理・運用することになります。稼働容量もプロバイダーが自動でコントロールしてくれます。費用面でもメリットが大きく、サーバーの稼働時間と回数に課金されるため低コストが見込めます。仮想サーバーを利用した時に比べ最大で9割のコストをカットできた例もあります。また、AWSのサービスが初期導入されているため設定が簡単で比較的容易に始められることも魅力です。ただし、実用化から日が浅いため、使用できる言語がNode.js、Python、Javaのみに限られています。
「EC2」は仮想サーバーでの開発となり、ディベロッパーはプログラムアプリに加え、OS、ミドルウェアの管理・運用が必要となります。稼働容量に合わせ手動で切り替える手間も発生します。費用は稼働時間に対する課金ですが、常時サーバーを起動しておく必要があるためサーバーレスに比べると高くなってしまいます。ただし、初期にはOSが用意されているだけなので各種設定が大変ではあるものの、ほぼ全てのプログラミング言語が使用でき、かつ汎用性が高いという特徴があります。
サーバーレスアーキテクチャーを提供する代表的なプロバイダー
先出のAmazon「Lambda」、googleの「Google Cloud Functions」、IBMの「OpenWhisk」、Microsoftの「Azure Functions」などが有名です。
プロバイダーによりサービスの内容は様々ですので、プロジェクトに合ったものを選ぶと良いでしょう。
エンジニアルームについて
-
Engineer Room
フリーエンジニアの案件探しは
お任せください! - ただ案件を紹介するだけではなく、専任のエージェントが就業まで完全サポートいたします。フリーエンジニアの皆様にとって必要な情報、知識などを的確且つ迅速にご提供いたします。







