良いポイント
サーバーレスの代表格のようなサービスだけあって、並列実行できるようにアプリケーションを作りさえすれば
必要な時だけスケールアウト・不要な時は費用がかからないという素晴らしいサービス
実用アプリケーションという面では敷居が高いように感じられがちですが、小さなところから使ってみるとその強力さがよくわかります。
システムの性能は従来はサーバ・ネットワーク性能・ディスク性能などを総合的に設計して初めて全体の性能が決まるもので幅広い専門知識が必要でしたが、それらが一切不要でスケールアウト可能なアプリケーションを稼働させられる、というのは革命的とすら感じます。
実行順序が多いジョブ等はSQS、ストレージはS3と組み合わせながら実装していく感覚はまるでパズル。
LinuxなどのサーバOSに不慣れなアプリケーション開発者がアプリケーション構築に集中できる素晴らしいサービスだと感じます。
改善してほしいポイント
Lambdaがサポートする言語のバージョンは時間とともに変わります。
(新しいバージョンのサポートが加わり、古いバージョンのサポートが外れます)
やむをえないことではありますが、作って終わり(開発だけ開発会社に発注して、保守契約なしで放置する)というスタイルだと(サポート切れが)時限爆弾となり得ます。
ある程度新しいバージョンに追随していくのは仕方がないとして、なるべく古いバージョンのサポートも残してもらえると利用者の裾野はもっと広がり、より活用が進むのではないかと思います。
利用が増えればサービスはさらに便利になっていくことが期待できるため、最終的には利用者がより便利に使える状況になると考えています。
どのような課題解決に貢献しましたか?どのようなメリットが得られましたか?
利用しないときと利用があるときのリソース消費の差が非常に大きい処理に大きな威力を発揮しました。
EC2やオンプレサーバで用意すると、ピーク時の性能に合わせてサイズ(性能)を用意しなければならず、利用有無にかかわらず高い費用がかかってしまいます。
Lambdaであれば実際に動かした費用だけなので、大きなコスト削減が見込まれます。
また、システム側の人間として何より嬉しいのは、ピークが予想を超えてきた時でもほぼ手放しでいられること。
(EC2ならスケールアップが必要だったり、オンプレミスだとそもそも対応できない、という状況)
検討者へお勧めするポイント
小さなアプリ(影響が少ないアプリ)から作って動かしてみられるといいと思います。
ポイントとしては、Lambdaで簡潔するものよりも、API-GW+Lambda、Lambda+SQS など、複数組み合わせて実装してみるとその威力が実感しやすいように思います。