SlideShare a Scribd company logo
1 of 17
金森政雄
クラウドネイティブアーキテクチャ勉強会@フレクト
2016年12月にフレクトに参画
前職ではスマホ向けサービスの認証、課金周りを
担当(オンプレ)
フレクトでは社内でも
特に長いおつきあいのお客様の案件を担当
運用課題の解決が最近の主なミッション
(境界を越えるのです)
好きなAWSサービス:APIGateway
Developer.ioにLTが取り上げられました!!
http://dev.classmethod.jp/cloud/aws/apigateway_mock_dev/
ECSとLambdaを活用した非同期のファイル解析
 なぜ、ECSやLambdaを使うことにしたのか
 EC2を使っていたチームがどのようにECSやLambdaに取り組んだか
顧客企業向け
業務システム
BtoC向けWebアプリ
フレクトの定番パターン
 BtoC向けにEC2でWebアプリ
 顧客が業務で利用するCRMとしてSalesforceと連携
クラウドネイティブ…?
 最初からクラウド100%で開発はしている
 古き良きIaaSとしてのAWSの使い方
 SaaS/PaaSの活用は不十分
web app
server
Internet
実現する機能
 ユーザがアップロードしたファイルのウイルス解析・画像処理
 処理が完了したものはSalesforceにアップロード
 処理自体は非同期でOK
課題
 Webアプリケーションと同じサーバで実施するとリソースを浪費する
 今後大幅なスケールが必要になる可能性がある
 ウイルス解析のソフトを既存のAppサーバに入れたくない
このワークロードはコンテナじゃない?
コンテナのメリットが活きる
 ウイルス解析ソフトをサーバや開発PCにインストールしないで良い
 ローカルでも簡単に動作確認できる
このワークロードはコンテナじゃない?
コンテナのメリットが活きる
 ウイルス解析ソフトをサーバや開発PCにインストールしないで良い
 ローカルでも簡単に動作確認できる
AWSでコンテナ使うならECSでしょ?
ECSを使えば運用も簡単になる
 フルマネージドなコンテナ管理
 容易なスケールアウト/イン
このワークロードはコンテナじゃない?
コンテナのメリットが活きる
 ウイルス解析ソフトをサーバや開発PCにインストールしないで良い
 ローカルでも簡単に動作確認できる
AWSでコンテナ使うならECSでしょ?
ECSを使えば運用も簡単になる
 フルマネージドなコンテナ管理
 容易なスケールアウト/イン
非同期ならイベント駆動にしたいな
S3→Lambdaキックで動くと良さそう
put file
event
ecs:RunTask
Apex Rest
S3
EC2
lambda
ECS
put file
event
send message
ecs:RunTask
get message
Apex Rest
EC2
S3
lambda
ECS
SQS
SQSを利用してキューイングした
 dockerへの情報受け渡し
 失敗した場合のリカバリを自動化(Design for Failure)
ウイルス定義ファルの更新
 docker buildの際に最新の定義ファイルを取得するようにする
 定期的にbuildしてECRを更新
 (ここはまだ設計段階なので、うまくいったら別で発表したい)
Q1.コンテナは普段から使っていた?
→No
Q1.コンテナは普段から使っていた?
→No
Q2.Lambdaの実装経験は?
→運用ツールで使ってはいたが経験者はチーム離任済み
Q1.コンテナは普段から使っていた?
→No
Q2.Lambdaの実装経験は?
→運用ツールで使ってはいたが経験者はチーム離任済み
Q3.そもそもうまくいく確証は?
→うーん、、、
https://aws.amazon.com/jp/blogs/compute/better-together-amazon-ecs-and-aws-lambda/
次はWebアプリをECS化したい
AWS Batchの採用
新しいアーキテクチャはモブプロで作って試す

More Related Content

What's hot

[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
de:code 2017
 

What's hot (20)

今日から始めるARMテンプレート
今日から始めるARMテンプレート今日から始めるARMテンプレート
今日から始めるARMテンプレート
 
[MW04] [Xamarin入門] コード共通化で開発スピードアップ! AI を活用したクロスプラットフォームアプリを Xamarin で作ってみよう!
[MW04] [Xamarin入門] コード共通化で開発スピードアップ! AI を活用したクロスプラットフォームアプリを Xamarin で作ってみよう![MW04] [Xamarin入門] コード共通化で開発スピードアップ! AI を活用したクロスプラットフォームアプリを Xamarin で作ってみよう!
[MW04] [Xamarin入門] コード共通化で開発スピードアップ! AI を活用したクロスプラットフォームアプリを Xamarin で作ってみよう!
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
 
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編
 
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
 
Visual studio online and Agile
Visual studio online and AgileVisual studio online and Agile
Visual studio online and Agile
 
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
 
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
 
.NET 6の期待の新機能とアップデート
.NET 6の期待の新機能とアップデート.NET 6の期待の新機能とアップデート
.NET 6の期待の新機能とアップデート
 
2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~
 
Photon Server Deep Dive
Photon Server Deep DivePhoton Server Deep Dive
Photon Server Deep Dive
 
Visual studio extensibility
Visual studio extensibilityVisual studio extensibility
Visual studio extensibility
 
ASP.NET SPA開発をはじめよう~今と未来とステップアップ
ASP.NET SPA開発をはじめよう~今と未来とステップアップASP.NET SPA開発をはじめよう~今と未来とステップアップ
ASP.NET SPA開発をはじめよう~今と未来とステップアップ
 
ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
Static Web AppsとBlazor WebAssemblyのすすめ
Static Web AppsとBlazor  WebAssemblyのすすめStatic Web AppsとBlazor  WebAssemblyのすすめ
Static Web AppsとBlazor WebAssemblyのすすめ
 
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
 
[SC02] シチュエーション別 Active Directory デザインパターン
[SC02] シチュエーション別 Active Directory デザインパターン[SC02] シチュエーション別 Active Directory デザインパターン
[SC02] シチュエーション別 Active Directory デザインパターン
 
Relationship betweenddd and mvc
Relationship betweenddd and mvcRelationship betweenddd and mvc
Relationship betweenddd and mvc
 

Similar to Ecsとlambdaのバッチ処理

20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
都元ダイスケ Miyamoto
 
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternApplication Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Atsushi Kambara
 
次期Office製品群の新しい開発モデルの解説
次期Office製品群の新しい開発モデルの解説次期Office製品群の新しい開発モデルの解説
次期Office製品群の新しい開発モデルの解説
kumo2010
 

Similar to Ecsとlambdaのバッチ処理 (20)

May the FaaS be with us!!
May the FaaS be with us!!May the FaaS be with us!!
May the FaaS be with us!!
 
俺とHashiCorp
俺とHashiCorp俺とHashiCorp
俺とHashiCorp
 
UnityとAmazon Web Servicesで生み出す新しい価値
UnityとAmazon Web Servicesで生み出す新しい価値UnityとAmazon Web Servicesで生み出す新しい価値
UnityとAmazon Web Servicesで生み出す新しい価値
 
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
 
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or ServerlessRunning Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
 
Serverless for VUI
Serverless for VUIServerless for VUI
Serverless for VUI
 
サーバーレスの今とこれから
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから
 
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
20131210 CM re:Growth - Infrastructure as Code から Full Reproducible Infrastru...
 
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternApplication Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
 
次期Office製品群の新しい開発モデルの解説
次期Office製品群の新しい開発モデルの解説次期Office製品群の新しい開発モデルの解説
次期Office製品群の新しい開発モデルの解説
 
講演資料「Azure AI Update Ignite Fall 2021を振り返ろう!」
講演資料「Azure AI Update Ignite Fall 2021を振り返ろう!」講演資料「Azure AI Update Ignite Fall 2021を振り返ろう!」
講演資料「Azure AI Update Ignite Fall 2021を振り返ろう!」
 
Five Steps to Culture Change を日本語で解説する 2020/11/06
Five Steps to Culture Change を日本語で解説する 2020/11/06Five Steps to Culture Change を日本語で解説する 2020/11/06
Five Steps to Culture Change を日本語で解説する 2020/11/06
 
Windows 開発者のための Dev&Ops on AWS
Windows 開発者のための Dev&Ops on AWSWindows 開発者のための Dev&Ops on AWS
Windows 開発者のための Dev&Ops on AWS
 
JAWS-UG Meets Windows (JAWS Days 2017)
JAWS-UG Meets Windows (JAWS Days 2017)JAWS-UG Meets Windows (JAWS Days 2017)
JAWS-UG Meets Windows (JAWS Days 2017)
 
ハイブリットクラウド環境におけるモダンアプリケーション開発
ハイブリットクラウド環境におけるモダンアプリケーション開発ハイブリットクラウド環境におけるモダンアプリケーション開発
ハイブリットクラウド環境におけるモダンアプリケーション開発
 
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
.NET の過去、現在、そして未来 ~ .NET 最新アップデート.NET の過去、現在、そして未来 ~ .NET 最新アップデート
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
 
.NET の過去、現在、そして未来
.NET の過去、現在、そして未来.NET の過去、現在、そして未来
.NET の過去、現在、そして未来
 
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformJSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
 
DevAx::connect はじめました
DevAx::connect はじめましたDevAx::connect はじめました
DevAx::connect はじめました
 

Ecsとlambdaのバッチ処理

Editor's Notes

  1. 雲の絵にする
  2. 雲の絵にする
  3. 雲の絵にする
  4. 雲の絵にする
  5. ウイルス定義を絵にする