ITの隊長のブログ

ITの隊長のブログです。Rubyを使って仕事しています。最近も色々やっているお(^ω^ = ^ω^)

雑ログ lambdaと他でピタゴラスイッチ

スポンサードリンク

www.aipacommander.com www.aipacommander.com

続き。

今日(昨日だけど)は、lambdaからlambda叩いたり、s3のイベントからlambda叩いたり、lambdaからsqsにqueueを追加したりなどした。

やったこと箇条書きする。

結構ハマったけどピタゴラできたのでよかった.

悩みと次やりたいこと

  • sqsに投げたあと一旦ピタゴラとしては終了し、queueをcloudwatchでevent発火してlambdaでポーリングしようとしてる
    • 今回クローラーなので、sleepとか挟みたいのと、fifoなので、queueに追加したあとにlambdaを叩くeventが発火できない
    • なので、一定間隔でqueueにmessageが登録されていないか確認するようにしようとしているが、定期実行なので無駄を生んでいてなんかいや
  • lambdaからDB接続
    • なんかアンチパターンらしいのでRDS使わないが、リアルタイムに追加しなくてもいいと思うので、s3に一度収集した情報をjsonかなんかで保存しておき、あとからs3の中身みて、データが存在しているのであれば、ec2起動してrdsに登録するとかの処理でいいと思った
  • lambda、lambda layersを使えば、ある程度共通化できるので、lambda関数自体は軽くなるのでそれは良い
    • ただ、ピタゴラのつながりみればわかるが、バンバン管理する関数が増えていくので管理がめんどくさい
    • 例えば、5つの関数を用意して、共通処理をlamda layersで登録した。けど、4つの関数を修正とlayersも修正すると、それぞれに紐付いている関数のlayersのバージョンの紐づけを修正し直さないといけないし、ブラウザでポチポチするのが本当めんどくさい
    • なんかそういうフレームワークないんかな
  • そうだ。今回のピタゴラで集めた情報を使って、s3とlambdaとvue.jsでフロントを用意する予定なんだが、結局のところlambdaとRDS問題があるので、どうやってデータを取得してフロントにわたすものを用意しようか
    • やっぱりdynamodbがいいんかな?????
  • 来週のLTまでに間に合わせたい気持ちだがこれは大変そうだ