AWS
lambda
spring-cloud
ServerlessFramework
stepfunctions

【イベントレポート】JavaプログラマのためのAWSサーバーレスハンズオン-ServerlessFrameworkで画像処理アプリケーションを構築編-

本記事は、
弊社株式会社スタイルズで開催したJavaプログラマのためのAWSサーバーレスハンズオン-ServerlessFrameworkで画像処理アプリケーションを構築編-(2018/1/19)のイベントレポートです。

20180119_01.png

スタイルズでは定期的にビジネスセミナーを開催しているのですが、技術イベントは久しぶりの開催となりました。
2018年はもっと技術イベントも主催したいという意味も込めて、2018年の主催イベント一発目はAWSサーバーレスのテーマでハンズオンを企画いたしました。

当日は定員ぴったりの満席!

Doorkeeperでの受付開始直後に20名の定員となってしまったので、当日にご都合が悪くなられて、来場できない方もいるかな。。。
と心配していたのですが、受付開始時間から、お申込みいただいた皆様にお越しいただき。。。

なんと定員ぴったり20名(+1名)の方にお越しいただきました!!
(1名の方はキャンセル待ちの状態だったのですが、直接会場にお越しいただきました!感激です)

20180119_02.png

Gitの画面を見ながらハンズオン

挨拶、サーバーレスの説明もそこそこに、参加者の皆様をGitにinviteして、Gitの画面を見ながらハンズオンをすすめさせていただきました!

事前にご案内をしていた以下のインストールとGitMavenのインストールを確認して、ハンズオンを開始!

  • ServerlessFramework(>= 1.23.0)のインストール
  • AWS CLIのインストール

今回のハンズオンでは、AWS IAMを個々にご案内させていただきました。

20180119_03.png

ハンズオンの概要

  • awslabsのaws-serverless-workshopsを参考に、サーバーレス画像処理アプリケーションの構築ハンズオン

  • アーキテクチャは、Amazon Rekognitionの顔検出機能を活用し、- Amazon S3に格納されているアップロードされた画像のリサイズ、Amazon DynamoDBを使用して画像のメタデータをユーザープロファイルに保存する、いくつかのAWS Lambda関数で構成。これらのLambda関数のオーケストレーションは、AWS Step Functionsステートマシンによって管理。

  • 各AWS Lambda関数はSpringCloudフレームワークにより実装。各AWS Lambda関数及び、AWS Step FunctionsステートマシンはServerless FrameworkにてDeploy。

20180119_04.png

感想と反省・今後に向け

アンケートで分かる範囲ですが、今回ご参加いただいた方は6割強が設計・開発職、4割弱が運用・監視などのインフラ職でした。
AWSサーバーレスというキーワードだと、やはりインフラエンジニアの方への訴求も強いのですね。

また、今回は、Serverless Frameworkの説明や、本構成における個々のサービスがどのような役割をになっているのかを駆け足で説明してしまったところがあったので、
今後は、上中下のような形で、もう少し丁寧に解説するという初級ハンズオン、逆に参加者にご参加いただきながらどんどん開発を進めていく上級ハンズオン(趣味のコミュニティみたいなイメージでGitで開発を進めるとか?)なんかがあっても良いのかな。と個人的には感じています。

2018年はデジタルトランスフォーメーションのための開発サービスがテーマ

スタイルズでは、今回のようなサーバーレス、コンテナーによるDevOps、IoTプラットフォームを利用したPoCなど、技術要素をいかにエンタープライズに適用していくのか?というテーマで、
2018年は多数ハンズオンイベントを企画していければと思っています。

インフラはAWSが基本になってくると思いますが、もしAWS×Devのテーマで聞きたいことや現在直面しているテーマなどがございましたら、
ぜひぜひご意見をお待ちしております!!

最後に

本ハンズオンの企画にあたりStep Functionsに関しては以下の記事を参考にさせていただきました。大変勉強になる記事をありがとうございます。

また、本ハンズオンで講師を担当したスタイルズ社員もServerless Frameworkに関してQiitaで発信をしています。
ご参考までにご覧ください。