Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

これが AWS ネイティブアーキテクチャだ! 2017年・春

1,944 views

Published on

JAWS DAYS 2017 LT大会で使用した資料です。

Go 言語 RESTful API、React SPA などの技術選定と一気通貫で AWS アーキテクチャを考えるとモダンな設計になるのではという話。

Published in: Technology
  • Be the first to comment

これが AWS ネイティブアーキテクチャだ! 2017年・春

  1. 1. これが AWS ネイティブアーキテクチャだ! - 2017年 春 - JAWS DAYS 2017 2017-03-11 Takahiro Ikeuchi eurie Inc.
  2. 2. アーキテクチャをスクラッチで設計するなら こんな感じでやるといいんじゃない という話をします 2
  3. 3. 自己紹介 Takahiro Ikeuchi @iktakahiro Company / Community eurie Inc. Founder & CEO SQUEEZE Inc. 技術顧問 PyData.Tokyo Organizer 得意 (あるいは下手の横好き Go lang, Python, React Cloud Infrastructure, UI Design etc... 3
  4. 4. 最近のマイブーム Virginia Region 4
  5. 5. ※ 今朝四時 5
  6. 6. eurie Inc. B2B 向け SaaS 事業 (https://eurie.io/ja/) Launched : カスタマーサポート支援クラウド "eurie Desk" 6
  7. 7. https://eurie.io/ja/ 7
  8. 8. 採用技術やサービス Go 言語 / RESTFul API React with TypeScript / SPA Python AWS Aurora, Lambda, Elastic Beanstalk, SNS, SES Elasticsearch SendGrid Code Ship など 8
  9. 9. Architecture 9
  10. 10. Client-Side の話 10
  11. 11. 11
  12. 12. Client-Side の話 Single Page Application かつ RESTful API のクライアントとして実装すれば、静的ファイルのみで 構成される (はず S3 + CloudFront で Application を配布 => Serverless !! SSL証明書 も無料でついてくる サイズが大きくなりがちな JavaScript を CDN 経由で配布する メリットはある 12
  13. 13. 余談: Cache どうしてるの ? Deployment プロセスの中に Invalidation を組み込む 更新頻度が高いなら TTL 極小でも OK REST API からフロントエンドアプリのバージョン情報を動的に fetch して古ければユーザーにリロードを促す とかやってます 13
  14. 14. Server-Side の話 14
  15. 15. Server-Side の話 RESTful API を前提に設計するとして Application/Classic Load Balancer の前に CloudFront を置くのが 鉄板 Latency 改善が見込める (Slack 社の資料参照: http://www.slideshare.net/AmazonWebServices/secured-api- acceleration-with-engineers-from-amazon-cloudfront-and- slack WAF を Attach できちゃう SSL証明書 も無料でついてくる (2回目) 15
  16. 16. Container 使わないの? Go 言語の場合、1バイナリをデプロイすれば動くので依存関係に 苦労することが (比較的) ない ので、Container 管理するメリットがそこまで大きくない もちろん使ってもいいです 16
  17. 17. Virginia Region がいま (さら) アツイ 理由 新サービスが最速で投入される 料金が安い (思いのほか安い) Latency 問題は 実装と CloudFront で緩和できる (※ もちろん Tokyo よりは遅延でます) 障害率 No.1 ?? AWS でいままで起きた大規模障害を振り返る - Qiita http://qiita.com/saitotak/items/07931343bcb703b101f8 17
  18. 18. RDB の話 18
  19. 19. Aurora 使いましょう - おわり - 19
  20. 20. RDB の話 Aurora はいいぞ Multi-AZ 構成にしておけばダウンタイム短し Maintenance Window も (そんなに) 怖くない PostgreSQL 互換 (preview) も追加されて選択の幅も広がりましたし MySQL 5.7 Compatible / Multi Master 構成待ってます!! 20
  21. 21. 非同期処理の話 21
  22. 22. 非同期処理の話 "非同期処理でよい処理系" の Hub として AWS Lambda を利用 Elasticsearch への登録 Amazon SES, SendGrid への SMTP 処理 Slack など外部システムへの通知 22
  23. 23. 23
  24. 24. アーキテクチャをスクラッチで設計するなら こんな感じでやるといいんじゃない という話でした 24

×