ブックマーク / zenn.dev/faycute (3)

  • AWSでバッチ処理を実装する際の選択肢とサービス比較

    処理が複雑でジョブの依存関係を定義したい場合は、AWS Batch 単体で制御するか、より複雑な場合は Step Functions を用いて Lambda、ECS(Fargate)、AWS Batch(Fargate) を組み合わせる。 AWSにおけるバッチ処理の選択肢 ざっくりとした選択肢は下記。 Lambda ECS(Fargate) AWS Batch(Fargate) これらのサービスに実際は SQS や Step Functions を組み合わせることもあるので選択肢はさらに広がる。 ちなみに、SQS + Fargate(常時起動でポーリング) という構成や、SQS + Lambda + Fargate(都度実行) という構成は、AWS Batch が Fargate に対応した現在は特にメリットがないので取り扱わない。 2021/5/2 追記 「常時リクエストがくるユースケー

    AWSでバッチ処理を実装する際の選択肢とサービス比較
    l08084
    l08084 2021/05/01
  • 私が考えるLambda開発環境のベストプラクティス

    概要 (この記事のアイコン、Lambdaっぽいの頑張って探した..!) 2020年にLambdaにコンテナイメージがサポートされて以来、Lambda開発をしたことがなかった。 AWS Lambda の新機能 – コンテナイメージのサポート 以前Lambdaを開発しているときは、適用するときにzip化が面倒だなとか、ローカルとクラウド上での動きが違うのでバグりやすいなとか、そのバグが適用しないと分からないので開発に時間がかかるなとか、色々と不便があったのを覚えている。 先日、画像圧縮処理で久々にLambdaを触り、その際コンテナイメージを使った快適なLambda開発環境を考えたので紹介する。言語はPythonだが他の言語でも同じ構成で大丈夫なはず。 結論 ディレクトリ構造

    私が考えるLambda開発環境のベストプラクティス
  • SaaS系スタートアップのリアルなAWSアーキテクチャ設計

    概要 AI革命のインフラを目指すSaaS系スタートアップのFastLabel(最近資金調達しました!記事はこちら)で働いているが、今までGCPで動かしていたインフラを訳あってAWSに基盤を載せ替えることになった。 スタートアップは何よりスピードが求められるが、だからといってセキュリティやモニタリング、可用性を疎かにはできないし、大きなインフラコストに耐えられるほど体力もない。 アプリケーション要件を満たしつつ、以下を実現するアーキテクチャを設計する。 シンプルな構成・構築の容易さ スピーディな開発・適用 可用性の担保 セキュリティの担保 最低限のモニタリング 低コスト(リソース・運用) ここで紹介するアーキテクチャは実際に運用まで行っており、問題なく稼働しているし、先日AWSの方にレビューしてもらったが、「なかなかイケてる」というお言葉をもらい、特に改善点も指摘されなかった。 結論(アーキ

    SaaS系スタートアップのリアルなAWSアーキテクチャ設計
  • 1