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.

Azure PaaSを活用したモダン E コマースソリューションの構築方法

325 views

Published on

This is slides for Azure Webinar Seminar: Modern EC solutions using Azure PaaS

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Azure PaaSを活用したモダン E コマースソリューションの構築方法

  1. 1. Azure PaaSを活用したモダン E コマースソリューションの 構築方法 Yoichi Kawasaki Azure Technology Solution Professional Asia Intelligent Cloud Global Black Belt Microsoft Corporation Slides for Azure Webinar: Modern EC Solutions
  2. 2. アジェンダ • Azure PaaS Overview • 事例解説 – Jet.com • 事例解説 – ドミノピザ
  3. 3. 今日のお客様の高い顧客体験への期待 スピード 79% 遅いウェブサイトには戻 りたくない パーソナライゼーション 38% 繰り返しの作業や何度も同じ情 報入力を求められたくない 一貫性 65% デバイス体験の一貫性の なさにフラストレーショ ンを感じている( スマホ、 オンライン、店舗) • https://www.glassboxdigital.com/ • Accenture Global Consumer Pulse 2013 • https://blog.kissmetrics.com/speed-is-a-killer/
  4. 4. サイトの応答速度が与える購買活動への影響 5 Source(Kissmetric Blog: https://blog.kissmetrics.com/loading-time/?wide=1) 一般的にページロードが遅い と離脱率は高くなる ショッピングサイト では47%が2秒以内の ページロードを期待 79%が遅いショッピン グサイトに不満を持っ た場合に戻ってこない
  5. 5. 重くのしかかる運用コスト 災害対策(DR)、冗長化対策、高負荷対策、 CI/CD、セキュリティ対策 本当に必要なことに十分な時間がとれていますか? 例えば顧客体験の向上とか ITトレンドの変化、人材不足
  6. 6. コンピュート ストレージ ネットワーキング Azureが提供するプラットフォームサービス セキュリティ& マネジメント ウェブ・モバイル Web Apps Mobile Apps API Management API Apps Logic Apps Notification Hubs メディア & CDN Content Delivery Network (CDN) Media Services 分析 & IoT HDInsight Machine Learning Stream Analytics Data Factory Event Hubs Mobile Engagement Active Directory Multi-Factor Authentication Automation Portal Key Vault インテグレーション/連携 Biztalk Services Hybrid Connections Service Bus Storage Queues Store / Marketplace ハイブリット オペレーション Backup StorSimple Site Recovery Import/Export データ SQL Database DocumentDB Redis Cache Search Tables SQL Data Warehouse Azure AD Connect Health AD Privileged Identity Management Operational Insights コンピュート Cloud Services Batch Remote App Service Fabric 開発者向けサービス Visual Studio Application Insights Azure SDK Team Project VM Image Gallery & VM Depot Infrastructure Services Platform Services
  7. 7. 8 責任範囲の比較 ストレージ サーバー ネットワーク ゲスト OS ミドルウエア 仮想化 データ アプリケーション ランタイム ホスト OS ユ ー ザ ー 管 理 ベ ン ダ ー 管 理 ベ ン ダ ー 管 理 ユ ー ザ ー 管 理 ユ ー ザ ー 管 理 ストレージ サーバー ネットワーク ゲスト OS ミドルウエア 仮想化 データ アプリケーション ランタイム ホスト OS ストレージ サーバー ネットワーク ゲスト OS ミドルウエア 仮想化 データ アプリケーション ランタイム ホスト OS アプリとデータ に集中すること ができる
  8. 8. Azure アプリケーションプラットフォーム
  9. 9. 多様なデータストアの選択肢 ストアタイプ 目的 Azureの選択肢 Relational store Transactions, joins, structured data, familiar SQL query SQL Database SQL DW NoSQL JSON document store Flexible schema, familiar SQL query, low latency Cosmos DB (DocumentDB) NoSQL key-value pair store Low-cost, fast, massive scale Tables NoSQL wide-column store Open-source, integration with Hadoop analytics HBase on HDInsight Cache Increasing speed of an app Redis Cache Search service Integrating search into an app. Full text search Azure Search Graph Store entities and relationship between entities Cosmos DB (Graph) Key/value OrdersCart Catalog & Reviews Document Suggestions Graph E-Commerce platform RDBMS
  10. 10. Application Insights リソース を選択してカスタムメトリックに ここでは: 最小1, 最大10, 規定2
  11. 11. Azure Search インデクサー インデクサー設定の詳細 インデクサーを使用した Cosmos DB と Azure Search の接続 https://docs.microsoft.com/ja- jp/azure/search/search-howto- index-documentdb
  12. 12. IndexWriter Indexer REST API インデクサーによる定期更新 • インデクサーの定期的実行による更新: 最小5分 • 変更、削除検知し差分実行 • データソースのフルクロール可 インデクシングAPIで直接更新 • POST: /indexes/<name>/docs/index • アップロード 、マージ、削除など • 1度のバッチ: 最大 1,000 ドキュメント • リアルタイムに近いデータ更新
  13. 13. パーティション • 全てのドキュメントはパー ティションの数分に分割保存 (IO分散) • 全パーティション合わせて1 つのインデックスを構成 レプリカ • 全レプリカに同じものが複製 同期される • クエリはいづれかのレプリカ に処理が割り当てられる par1 par2 par3 par4 par5 rep1 rep2 rep3 rep4 p1 p2 p3 p4 p5 p1 p2 p3 p4 p5 p1 p2 p3 p4 p5 p1 p2 p3 p4 p5
  14. 14. https://docs.microsoft.com/azure/architecture/refere nce-architectures/app-service-web-app/scalable- web-app リファレンス アーキテクチャ Web アプリケーション ハイパフォーマンス& スケーラブル構成 • Azure Web Appフロント • Web JobsとQueue Storageでバックグラウンド タスク実行 • Redis CacheとCDNでコンテンツキャッシュ • SQL DBと Cosmos DBにデータストア • Azure Searchとの連携
  15. 15. Domino’s Pizza
  16. 16. これまで抱えていた問題 リージョン1 ストア アプリ1 リージョン2 ストア アプリ 2 リージョン3 ストア アプリ 3 システムのスケールをリージョン ごとに設定する必要があった データの設定、メンテナンスも リージョンごとに個別 オースト ラリア EU 日本
  17. 17. User#1 (Location: Australia) User#2 (Location: Germany) Traffic Manager Traffic Manager 発信元の地理的な場所に基づいて ユーザーを地理的に近いリージョ ンに優先的にルーティング Azure Web App フロントエンドをトラフィックに 応じてオートスケール Cosmos DB グローバルに読み込み・書き込み を低いレイテンシーで実現した 分散データベース
  18. 18. 全てのデータを自動的に世界中の Azure リージョンにレプリケート することができる 読み取りリージョンで障害によるフェールオーバー 書き込みリージョンで障害によるフェールオーバー • https://docs.microsoft.com/ja-jp/azure/cosmos-db/distribute-data-globally • https://docs.microsoft.com/ja-jp/azure/cosmos-db/regional-failover
  19. 19. 読み取りリージョンのルーティングに関する注意 Cosmos DBのマルチリージョン分散パターンにおいて読み取りリージョンが 複数ある場合、読み取りリージョンは自動的に地理的条件に最適化された リージョンにルーティング(アクセス元に最も地理的に近いリージョンへの ルーティングなど)はされません。SDKにおいてPreferredLocationsで明 示的にリージョンを指定してルーティング先を設定する必要があります。 詳しくはこちらのブログを参照ください Cosmos DBで読み取りリージョンへ明示的にルーティングする https://k-miyake.github.io/blog/cosmos-db-preferred-locations/
  20. 20. https://docs.microsoft.com/azure/architecture/ reference-architectures/managed-web-app/ multi-region-web-app リファレンス アーキテクチャ Web アプリケーション の複数リージョン構成 • Traffic Managerによるルーティング • Azure Web Appフロント • SQL Database と Cosmos DB の Geo レプリケーション • Azure Searchは各リージョンで個別 に立てる
  21. 21. Resources › Azure eコマースソリューションページ: https://azure.microsoft.com/ja-jp/solutions/ecommerce/ › Azureリファレンスアーキテクチャ - Web アプリ: https://docs.microsoft.com/en-us/azure/architecture/reference- architectures/app-service-web-app/ › App Services Best Practices for Large Scale Applications: https://www.youtube.com/watch?v=HxpgiYc-F_k › Jet.com事例: https://www.microsoft.com/ja- jp/casestudies/jetcom.aspx

×