Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015

5 850 vues

Publié le

Mobile

Publié dans : Mobile
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici

モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015

  1. 1. Copyright © Classmethod, Inc. モバイルファースト時代の クラウドネイティブアーキテクチャ JAWS DAYS 2015 2015.3.22 classmethod Inc. 大橋 力丈
  2. 2. 大橋 力丈 (おおはし りきたけ) ✦所属 • クラスメソッド株式会社 • iPhoneアプリサービス事業部 部長 ✦仕事 ✦iOSとAWSを組み合わせたアプリの開発 http://dev.classmethod.jp/author/oohashi-rikitake/ ブログ http://underscore-app.tumblr.com/ アプリ
  3. 3. クラスメソッド株式会社 • iOS/AWSに特化した会社(Androidもやってます) • アプリからインフラまでワンストップ • 秋葉原 / 札幌 / 上越 • 約70名のエンジニア集団 • Developers.IO
  4. 4. Developers.IO
  5. 5. Developers.IO • 社員執筆によるIT技術専門サイト • 月間:80万PV、35万UU • 国内で最も多くのAWS記事を公開しています • AWS:1,000本、iOS:500本、Android:300本以上 ブログもやってる会社です
  6. 6. Developers.IO AWSだけじゃない!!
  7. 7. Twi$er Jaws*Days * * @jawsdays 3 " @awscloud_jp #jawsdays 1 " AWS Twi0er JAWS"DAYS Twi0er ?? 17:00 * 9:00 16:50 Tweet Kindle JAWS*T * Moff*Band JAWS*T Step"1" Step"2" Step"3" Jaws*Days OK JAWS*T
  8. 8. 今日はいくつか名言ぽいこ とを言いますので、是非 Tweetしてください! #jawsdays
  9. 9. Agenda • よくあるAWS構成 • モバイルアプリで考えておくべきこと • クラウドネイティブ • AWS Mobile SDK • おさらい
  10. 10. Agenda • よくあるAWS構成 • モバイルアプリで考えておくべきこと • クラウドネイティブ • AWS Mobile SDK • おさらい
  11. 11. よくあるスケーラブルな構成
  12. 12. ELB + EC2 + RDS構成のメリット • EC2に障害があってもELBが振り分けてくれる • トラフィック増えたらスケールアウト • AutoScalingで自動で拡大/縮小 • RDSの負荷が上がったらスケールアップ • スナップショットでデータ復元
  13. 13. ELB + EC2 + RDS構成のメリット ELB + EC2 + RDSは 本当に良い構成!! ちゃんと設計されていれば
  14. 14. Agenda • よくあるAWS構成 • モバイルアプリで考えておくべきこと • クラウドネイティブ • AWS Mobile SDK • おさらい
  15. 15. モバイルアプリ開発あるある • 最短リリース!最小構成! • Push通知と一斉リターン • 既存のAPIあるある問題!
  16. 16. 最短リリース!最小構成!
  17. 17. 各ストアのアプリ登録数 •AppStore •1,230,000本
 •GooglePlay •1,430,000本
 •Amazon AppStore •293,000本 Sorece:appFigures
  18. 18. 各ストアの登録数
  19. 19. とにかく早く! •アイデアが決まったらすぐリリース •モバイルアプリの開発期間は短い 平均3ヶ月※1 •iOSは毎年9月頃にOSのバージョンアップ ※1:当社平均です スピード重要!
  20. 20. 最小構成!最短リリース! •モバイルアプリはリリースしてからがスタート •後々必要になる足回りは後回しになりがち •拡張性 •ログ •アクセス解析 •アップデート対応 •全体設計の考慮漏れ
  21. 21. 「小さく産んで大きく育てる」 そのための設計は疎かにしない
  22. 22. Push通知と一斉リターン
  23. 23. Pushの流れ
  24. 24. 端末が増えてくると… 配信遅延が起きてくる
  25. 25. •SNSのTopic使う •1リクエストで複数の送信先へ一括送信 •1トピックで1000万サブスクリプション •3000トピックまで作成可能 配信を早くする
  26. 26. •デバイス毎に直接通知を行う 特定の宛先に配信 S3に配信リストを置く Workerが配信リストを 取得してキューに入れる Workerはキューを取り 出してPublishする
  27. 27. 配信が早く終わると 瞬間的なリクエストが増える
  28. 28. 一斉アクセス  ・APIに負荷が一気にかかる  ・AutoScalingでも対応できない  ・I/Oが追いつかない  ・スケールアップでも対応できない
  29. 29. •配信量をコントロールする •各サービスの対策 •EC2:ピーク時の計画的スケールアウト •RDS:読み取り専用インスタンス •そもそもEC2にアクセスが本当に必要か? •静的コンテンツを利用 一斉アクセス対策 全体を意識したアーキテクチャ
  30. 30. Pushを制するものが モバイルアプリを制する
  31. 31. 既存のAPIあるある問題!
  32. 32. サーバーサイドってどうなってます? 既存のAPIあるんでソレ使って下さい! あっ!既存あるんすね! じゃあチョチョイのチョイですね!! 営業 クライアント ※フィクションです
  33. 33. 既存のAPIあるから余裕そうだよ! 大丈夫!大丈夫! 既存あるから!よろしくね! 営業 エンジニア えっ!? API一覧とか見たいです ・・・・・ ※フィクションです
  34. 34. ホーム画面用のAPI一覧 目的 エンドポイント トピック一覧取得 https://api.xxx.com/v1/topics/ カテゴリー一覧取得 https://api.xxx.com/v1/categories/ おすすめ商品取得 https://api.xxx.com/v1/products/recommend ユーザー情報取得 https://api.example.com/v1/user/
  35. 35. ホーム画面の呼び出しまで カテゴリー一覧取得API おすすめ商品一覧API ユーザー情報取得API トピック一覧取得API 1画面呼ぶのに何個のAPIを叩けばいいんだ!?
  36. 36. モバイルアプリ用のAPIを作るべき •何度も異なるAPIを呼ぶのは非効率 •画面表示までに時間がかかる •ユーザー体験が悪い •API毎にエラーハンドリングなど考えなきゃダメ 詳しくは ”Web API The Good Parts”
  37. 37. 1Screen, 1API call
  38. 38. Agenda • よくあるAWS構成 • モバイルアプリで考えておくべきこと • クラウドネイティブ • AWS Mobile SDK • おさらい
  39. 39. ここから本題!
  40. 40. モバイルファースト時代の クラウドネイティブアーキテクチャ 本日のタイトル
  41. 41. よくあるスケーラブルな構成
  42. 42. これは クラウドネイティブ?
  43. 43. AWSを使っているから クラウドネイティブ?
  44. 44. AWSのサービス
  45. 45. AWSのサービス 使ってるのこれだけ
  46. 46. AWSのすべての機能や ツールには、存在している 理由がある 米アマゾンCTOのヴァーナー・ヴォーゲルズ(Werner Vogels)氏
  47. 47. 21世紀的なアプリケーション開発のあり方 •Controllable • コンポーネント化とステートレス化 • デプロイメントおよび運用のプロセスの自動化 • アプリケーション設計の最初に考えるべきはコスト •Resilient • 顧客の保護は何よりも優先されるべき • コンティニュアスなデプロイメントやインテグレーションは日常だ • 障害は例外的なものではないと考えること •Adaptive • 自分で制約することをやめよ •Data Driven • データを最大限に活用せよ 参考:@IT アマゾンCTOが語った、「クラウドネイティブ」なアプリのつくりかた
  48. 48. EC2:センターフォワード RDS:ゴールキーパー 注:あくまで主観です
  49. 49. サッカーのポジション • GK:ゴールキーパー • DF:ディフェンダー • CB:センターバック • SB:サイドバック • SW:スウィーパー • MF:ミッドフィールダー • DMF:ディフェンシブミッドフィルダー • WB:ウイングバック • CMF:セントラルミッドフィルダー • SMF:サイドミッドフィルダー • OMF:オフェンシブミッドフィルダ • フォワード(FW) • WG:ウイング • ST:セカンドトップ • CF:センターフォワード
  50. 50. AWSのサービス
  51. 51. AWSのサービス 豊富なタレントが っている
  52. 52. インフラだけでいいの?
  53. 53. AWSを利用しサービス全体を考える •可用性 • サーバーはダウンするという前提で設計する •性能・拡張性 • 急なリクエストが発生するという前提で設計する •運用・保守性 •定期的なシステムメンテナンスが発生するという前提で設計する •コスト •ユーザー数が増えてもコストが激増しないような設計する
  54. 54. AWSを知り、サービスを 知らなければ勝利はない
  55. 55. チームで全体を考える!
  56. 56. 疎結合なチーム AWSエンジニア プロダクトオーナー Serverエンジニアスマホエンジニア
  57. 57. 密結合なチーム AWSエンジニア プロダクトオーナー Serverエンジニア スマホエンジニア それぞれが補完し合える 関係が大切!!
  58. 58. サービスは疎結合 チームは密結合
  59. 59. Agenda • よくあるAWS構成 • モバイルアプリで考えておくべきこと • クラウドネイティブ • AWS Mobile SDK • おさらい
  60. 60. AWS Mobile SDK
  61. 61. モバイルから直接使える AWS サービス 認証 : Cognito データストア : DynamoDB ストレージ : S3 プッシュ通知 : SNS 行動分析 : Mobile Analytics データストリーミング : Kinesis 分散キュー : SQS
  62. 62. 2Tire Archtecture
  63. 63. 2Tier Archtecture •クライアントとバックエンド •クライアントに処理を持つ(ファットクライアント) •クライアントからAWSのサービスを利用する
  64. 64. 2Tierの門番
  65. 65. Cognito
  66. 66. AmazonCognito •アイデンティティの管理 • 複数のIDプロバイダや独自認証基盤の連携 • ユニークIDの作成、識別 •複数デバイスをまたいだデータ同期 • ローカルに保存したデータの同期 • オフラインでも使える
  67. 67. Cognitoを使ったログインの流れ
  68. 68. モバイルアプリへの 活用例
  69. 69. 2Tier のイメージ EC2とRDSは裏側にいる
  70. 70. • フルマネージドのサービスに直接アクセス • サーバーレス • EC2,RDSへの一極集中の負荷を減らせる • 何かカッコイイ 2Tierの良いところ
  71. 71. 本当に サーバーレスで いけるのか?
  72. 72. • AWS Mobile SDKをラップする必要がある • iOSとAndroidで実装が必要 • 各サービス同士のつなぎ込みがしにくい • ロールバックある場合は大変 2Tierの課題
  73. 73. 2Tierの救世主!?
  74. 74. Lambda
  75. 75. • イベントをトリガーに処理を実行 • 実行環境はAWSが管理 • オートスケール • EC2インスタンス費用が不要 • AWS Mobile SDKからは呼べない AWS Lambda
  76. 76. 課題は色々あるけれど…
  77. 77. モバイルアプリは 2Tierが増える!
  78. 78. Agenda • よくあるAWS構成 • モバイルアプリで考えておくべきこと • クラウドネイティブ • AWS Mobile SDK • おさらい
  79. 79. おさらい
  80. 80. 「小さく産んで大きく育てる」 そのための設計は疎かにしない
  81. 81. Pushを制するものが モバイルアプリを制する
  82. 82. 1Screen, 1API call
  83. 83. AWSのすべての機能や ツールには、存在している 理由がある 米アマゾンCTOのヴァーナー・ヴォーゲルズ(Werner Vogels)氏
  84. 84. AWSを知り、サービスを 知らなければ勝利はない
  85. 85. サービスは疎結合 チームは密結合
  86. 86. モバイルアプリは 2Tierが増える!
  87. 87. 告知
  88. 88. • 3/27(金):BusinessDay • デジタルマーケティングをテーマにした話 • 対象:マーケティング担当 • 3/29(日):DevelopersDay • AWS、Mobile、IoT、BigDataなどのお話 • 対象:デベロッパー • セミナー、ハンズオン、テクニカルディープセッション • 本日の2Tierの話をより深く話します Developers.IO 2015
  89. 89. お待ちしております!

×