Scrapyによる日次のスクレイピングをクラウドにデプロイしたい

元々レンタルサーバーでcron実行していたが、データ保存先に使っていたmLabがMongo Atlasに移行する必要があったことから色々バージョン問題に遭遇し、どうしようか悩み中。

今のところAWS Lambdaが良さそうだが、いくつか気になる。

  • 依存ライブラリ含めてアップする必要があり、250MB制限に収まるか?
    • 依存ライブラリは80MB程度でOK
  • Python2.7使える?
    • OK
    • https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/lambda-python.html
  • シェルコマンド実行からPythonからの呼び出しに置き換えられる?
    • CrawlerProcess を使えば OK
  • サービスの仕様変更保守コストを考えるとDocker化が望ましい?
  • アップしたソースコードはプライベート?
    • デプロイパッケージは暗号化されるらしい
    • 関数へのアクセスも IAM で制限するのでまあ大丈夫か

同じようなサービスに Google Cloud Functions もあるが、こちらは Python 3.7 か 3.8 らしい。Lambda も同じようにその内サポート外になりそうやな…。そう考えるとやっぱり Docker の方がいいか…。まぁいい加減 3 系に上げた方がいいけど。

参考

AWS Lambda でのデータ保護
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/security-dataprotection.html

コメントを残す