generated at
Serverless
Serverを持たないbackend
2014年にAWS Lambdaが発表されたのが始まり ref
対義語はServerful


Serverfulとの違い、Serverlessの特徴
Serverlessは、eventが発生した時に初めて起動する
起動して、関数を実行して、終了する、という感じ
そのため、statefulな処理には向いていないっぽいmrsekut
やりようはあるんだろうけど
Serverfulは常に稼働している必要がある
AWS Lambdaは、実行した「時間(100ms単位)」と「回数」で課金される
requestがない期間は費用が発生しない
最小限の費用になる
serverを常時稼働しているときよりずっと安い
AWS Lambdaの場合は、管理の大部分をAWSに任せられる
serverの管理や運用が不要
Serverfulはserverを自分で管理する必要がある




参考


Serverlessの具体例をAWS Lambdaしか知らないので、それに寄っていると思うmrsekut
AWS Lambda固有の話っぽいやつはAWS Lambda
AWS Lambdaも含めたServerlessの嬉しさみたいなのは、このページに書こうかな




デメリット

何に向いているか
いつ処理が必要になるかわからないが、1回の処理が短時間で終わるもの



管理の大部分をAWS側に任せられる
OSやミドルウェアのメンテが不要
ミドルウェアはLAMPのA,M,Pらへんのこと
OSや言語のversionを上げる時に、サービス停止する必要がない
必要なCPUとメモリを設定するだけでいい
サーバーへの攻撃を避けられる
どういうこと #??





サーバーのリソースを意識しない
柔軟なスケーラビリティ
事前に必要なキャパシティを考慮しなくても、リクエスト数や負荷によって自動的にスケーリング(拡張/縮退)される
可用性・回復性の向上
デフォルトで可用性と耐障害性機能が備わっているものが多い



設計はEC2のときとどれぐらい変わるのか
どういう箇所を気をつけて実装することになるのか
EC2で実装していたコードはどれぐらい流用できるのか
どういうサービスがserverleeに向いているのか
serverlessを使った時に起こりがちな問題



比較
特性仮想マシンContainerServerless
拡張の単位仮想マシンアプリケーション機能
存続期間数日から数か月数秒から数分数ミリ秒から数秒
パフォーマンス予測可能予測可能性が低い予測可能性が最も低い
運用コスト
運用管理性
プロバイダー・ロックイン中~高