Save 37% off PRO during our Black Friday Sale! »

AWS_Lambda_Go_で_SPA試してみた

E7151ab8219e76672f7a7691dd2c88e6?s=47 shiro seike
March 28, 2018
140

 AWS_Lambda_Go_で_SPA試してみた

E7151ab8219e76672f7a7691dd2c88e6?s=128

shiro seike

March 28, 2018
Tweet

Transcript

  1. AWS Lambda Go で SPA試してみた Fukuoka.go#10 1 株式会社Fusic @seike460

  2. seike460 seike460 seike460 seike460 株式会社Fusic 清家史郎 (@seike460) 2 # 得意な技術

    - PHP - Server - AWS # 得意になりたい技術 - golang - Serverless # 作っているプロダクト - s3ry
  3. s3ry 3

  4. • Go製のAWS S3 操作CLI • https://github.com/seike460/s3ry • fileのアップロード、ダウンロード、ファイルリスト作成 4 s3ry(エスリー)

  5. 本題 5

  6. 何をつくってるのか? 6

  7. AWS S3で運用するSPA Todo utakata 7

  8. • AWS S3で運用するSPA Todo(本運用はAmazon CloudFront) • 泡沫にした理由は和名のかっこよさげな名前付けたいだけ • 巷の無料TodoアプリはSlackに通知してくれない
 (webhookありそうだけど少し開発)

    • Slack通知してくれないとミーティングすっぽかしちゃう • Slackが通知してくれる事で、業務中にコードに集中出来る • もうServerlessで作っちゃおう 8 utakata
  9. なに使ってるの? 9

  10. react-redux 10

  11. • React • Facebook社製のViewライブラリ • Redux • 状態管理を行なうライブラリ • React+Reduxすると何が良いのか?

    • Reduxが状態管理してReactは描画だけに集中出来る 11 react-redux
  12. 12 人気 + α(後述)

  13. AWS Amplify 13

  14. • AWS製のJavaScriptライブラリ • Amazon Cognitoと連携した認証部分を行なってくれる • React用のComponentを利用するだけでログイン画面が完成 14 AWS Amplify

  15. Serverless Framework 15

  16. • 主にAWS LambdaとAWS API Gatewayを使った
 いわゆるServerlessを作成出来るFramework • AWS LambdaがGo対応したら即Go対応取り込んでくれた(最高) •

    npmを利用してインストールすることができます • 簡単にServerless Architectureを作成して、
 Serverlessすることが可能 16 Serverless Framework
  17. serverless.ymlを設定 • runtimeをgo1.xにする • handlerをコンパイルした
 Goバイナリを指定する 17

  18. go buildする時の注意点 • Serverless Frameworkが指定するバイナリをbuildする時は
 GOOS=linuxをつける事を忘れずに! • build用のシェルを npm run

    deploy時に実行するようにしました
 (もっと良い方法あれば是非教えてください!) 18
  19. 19 npm run deploy

  20. デモ 20

  21. • Serverless Frameworkとgolangを使って簡単にServerless
 →API Gatewayが面倒な方オススメです。 • SPAの認証が辛い場合はAWS Amplifyを使って認証作成
 →利用するだけなので非常に簡単でオススメです。 •

    react-redux
 →誰か教えてください • 簡単そうじゃん?と思った方、
 フロントエンド弱者の僕でも出来ました。
 
 一緒にServerlesssしましょう! 21 まとめ
  22. ご清聴ありがとうございました! 22