先日開催されたAWS Lambda Meetup #0に参加してきました。もともと聞きに行く予定だったのですが、主催者の@Keisuke69さんから打診を受けて急遽登壇することになりました。
Lambdaクローラーの背景
最初にLambdaのサービスの発表を受けて、SIer脳の私はバッチサーバの代替として使いたいと考えました。なぜならばバッチサーバの運用は、思いのほか面倒くさいのです。レガシーな作りになりやすく、フェイルオーバーなど自動復旧の仕組みが取りづらいためです。そんなバッチサーバを、そもそもサーバレスのLambdaに置き換えると、運用が楽になってハッピーです。
と言うことでLambdaに注目し、Advent Calendarなどを見ながら情報収集をしています。今のところ、旧来のバッチサーバをそのまま置き換えるのは難しいけど、幾つかの部分は吸収できるなと感じています。それよりも、バッチの考え方自体を変えた方が良いかもと考えています。そんなこともあり、Lambda使ったアプリを一つ作ってみようというのが、Lambdaクローラーを試してみた理由です。
SNSとSQS
今回の登壇者が口々に言っていたのが、LambdaとSNSの連携をしてくれという要望でした。私もその通りだと思います。一方で、現状のLambdaの仕様だと実行結果が受け取れません。SNSとLambdaが連携しても、果たしてその処理が正常に完了したのかが解らない(そもそも受け取れたのか)という問題があります。
その点を考えると、現在のLambdaの在り方と全く逆になりますが、SQSをポーリングするような連携機能があれば嬉しいですね。それだと、処理の終了時にキューを消す処理を追加するだけで、バッチ的な使い方がしやすくなります。旧時代的な発想かもしれませんが、使い所は多いのではと思っています。
感想
Lambda Meetupの初回でしたが、発表者も参加者もどちらもレベルが高くかなり刺激を受けました。正直、今回の発表はちょっと触ってみました以上のものではなく、他の登壇者とのレベルの差が大きく申し訳なかったなと思います。一方で面白かった点としては、発表者それぞれが自分のユースケースを元にLambdaを捉えている点です。それだけ、懐が深いサービスなんだと思います。自分としては、SIer的な発想は抜け切れないと思うので、その点を突き詰めてLambdaの利用の仕方を考えていこうと思います。
またLambdaと直接関係ないのですが、今回の発表の中ではアンダースコア株式会社の諏訪悠紀さんの「Lambda × Mobile の可能性」が一番気になりました。ちょうどモバイルサービスを提供するインフラ構成について考えていたところで、Cognitoの出現でモバイルから直接AWSを使うという手が良さそうだなと思っていました。それを実際に試みている話を聞けて、いろいろ参考になりました。これについては、改めてまとめて見ようと思います。
See Also:
AWS Lambdaで作るクローラー/スクレイピング
Lambdaで作るクローラー/スクレイピング
参照:
Lambda Meetup #0に参加してみて #LambdaMeetup
AWS Lambda Meetup #0 で Lambda × Mobile の話をしてきた | Developers.IO
AWS Lambda Meetup #0