High PerformanceMulti-Server Magentoin der CloudFabrizio BrancaMeet Magento #6.12 in Leipzig
San Francisco
Und Sie?!• Wer war bei meinen Caching/Varnish Vortrag letztes Jahr?• Wer betreibt einen Magento Shop auf mehr als einemFro...
Angry Birds
Angry Birds
Angry Birds
Angry Birds
DRM ServerMail ServiceGiftcardsBraintreeWarehouseInventory3 Storefronts(US, EU, ASIA)CustomReportingSplitshippingWarehouse...
Anforderungen• Gutes, flexibles Shopsystem• Hochverfügbar / Ausfallsicher• Lastspitzen• Schnell• Backendserver unabhängig ...
Lösungsbausteine
Cloud ServicesRightScale ServicesAmazon AWS ConsoleCloud-FrontElasti-CacheS3EC2 RDS ELB Route 53ManagementDeploymentsAuto-...
Magento in der Cloud
Share nothing?CodeCacheSessionStorageAssetsProduktbilder,CMS-Bilder,Skalierte BilderDaten-bankJS/CSSBundlesServer
Magento Anpassungen für die Cloud• MinifyJavaScript + CSS während des Builds• JavaScript + CSS mit Zeitstempel versehen un...
Sonstige ModuleAoe_Scheduler Aoe_Apilog
S3Assets StorageVarnish ArrayEC2Frontend ArrayCloudFrontCDN for SkinRDSMySQLS3DeploymentElastiCacheCache BackendELBLoad Ba...
Deployment X+1Release YS3DeploymentRoute 53DNS-Serviceshop.angrybirds.comXVarnish ArrayEC2Frontend ArrayBackend ArrayEC2 W...
Deployment X+1Release YVarnish ArrayFrontend ArrayELBLoad BalancerWorker ArrayEC2Deployment XEC2Backend ArrayEC2ELBLoad Ba...
Downtime während eines Deployments:
Alle Warenkörbe,aktive Logins und Sessionsbleiben beimDeployment / Rollbackerhalten.
Magento, schnell!
Magento Frontend CachingOptimierungsfelder
Frontend-OptimierungenJavaScript / CSS• Bundling (Magento)• Minifying (mit YUI Compressor)• Gzip-Komprimierung (Apache)• Z...
Magento-OptimierungenLogging reduzierenUncachebare Features entfernenCaching• Asynchronous Cache Clearing Queue• Alte Cach...
95% der Hitssind cachebar!5% dynamischerInhaltStartseiteKategorienProdukteCMSWarenkorbCheckoutKundenkontoCaching
VarnishReverse ProxyMagentohttp://www.fabrizio-branca.de/make-your-magento-store-fly-using-varnish.htmlCaching
LösungenAoe_StaticCaching +Handling vondynamischem ContentMagneto_VarnishPurging
Lessons learned• 404s sind teuer=> cache or redirect• Cloudfront mit S3 Backendkann kein gzip=> deploy time bundeling/comp...
ContinuousIntegration undDeployment
Keine Angst vorProduction-Deployments!
Magento InstallationspaketDatenbank-TabellenDateien*‣htdocs [Magento Source]‣.modman [Custom Packages]InstallerSettings‣UR...
PerformanceTestsAcceptanceTestsUnit-TestsPHPUnitInstallation auf„Latest“SystemBuildDeployment Pipeline
CloudDeploymentProductionIntegrationTestsAOE + RovioCloudDeploymentStagingCopy to S3Deployment PipelineInstallation aufDep...
Deployment desneuen ReleasesSpace gamelaunchArray skalierthochUSA wacht aufLaunch!
Besucher/Tag
(echte) Besucher gleichzeitig!
Danke!http://www.aoemedia.dehttp://www.fabrizio-branca.de@aoemedia@fbrnc
Nächste SlideShare
Wird geladen in …5
×

High Performance Multi-Server Magento in der Cloud

692 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie
0 Kommentare
3 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
692
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
2
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
3
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

High Performance Multi-Server Magento in der Cloud

  1. 1. High PerformanceMulti-Server Magentoin der CloudFabrizio BrancaMeet Magento #6.12 in Leipzig
  2. 2. San Francisco
  3. 3. Und Sie?!• Wer war bei meinen Caching/Varnish Vortrag letztes Jahr?• Wer betreibt einen Magento Shop auf mehr als einemFrontend-Server?• Wer hat Erfahrungen mit Amazon AWS oder Cloud-Hostingim Allgemeinen?• Wer betreibt einen Shop mit mehr als 500 Bestellungen amTag?• 1000 Bestellungen am Tag?• 10 pro Minute?
  4. 4. Angry Birds
  5. 5. Angry Birds
  6. 6. Angry Birds
  7. 7. Angry Birds
  8. 8. DRM ServerMail ServiceGiftcardsBraintreeWarehouseInventory3 Storefronts(US, EU, ASIA)CustomReportingSplitshippingWarehouse /InventoryManagementFullfillmentBannerManagementCustom Tax,Custom ShippingCatalogRules…Das Angry Birds Magento Universum
  9. 9. Anforderungen• Gutes, flexibles Shopsystem• Hochverfügbar / Ausfallsicher• Lastspitzen• Schnell• Backendserver unabhängig von den Frontend-Instanzen• Effizientes und unabhängige Abarbeitung vonHintergrund-Tasks• Shop-Betrieb darf nicht von neu hinzukommenden oderwegfallenden Server-Instanzen oder neuen Deploymentsbeeinträchtigt werden
  10. 10. Lösungsbausteine
  11. 11. Cloud ServicesRightScale ServicesAmazon AWS ConsoleCloud-FrontElasti-CacheS3EC2 RDS ELB Route 53ManagementDeploymentsAuto-ScalingMonitoringLoggingScripting API
  12. 12. Magento in der Cloud
  13. 13. Share nothing?CodeCacheSessionStorageAssetsProduktbilder,CMS-Bilder,Skalierte BilderDaten-bankJS/CSSBundlesServer
  14. 14. Magento Anpassungen für die Cloud• MinifyJavaScript + CSS während des Builds• JavaScript + CSS mit Zeitstempel versehen und aufallen Servern verfügbar machen• Deployment Name im Cache Prefix• Cache-Warmup Script als Teil des Deployments• Health-Checks für Varnish• Automatisches und manuelles Varnish Purging• E-Mail Service• Asset-HandlingAoe_JsCssTstampAoe_Static
  15. 15. Sonstige ModuleAoe_Scheduler Aoe_Apilog
  16. 16. S3Assets StorageVarnish ArrayEC2Frontend ArrayCloudFrontCDN for SkinRDSMySQLS3DeploymentElastiCacheCache BackendELBLoad BalancerCloudFrontCDN for AssetsMonitoringBackend ArrayEC2 EC2EC2Worker ArrayEC2BraintreeMailDRMGiftcardsLoggingEC2Route 53DNS-Serviceshop.angrybirds.com
  17. 17. Deployment X+1Release YS3DeploymentRoute 53DNS-Serviceshop.angrybirds.comXVarnish ArrayEC2Frontend ArrayBackend ArrayEC2 Worker ArrayEC2ELBLoad BalancerEC2EC2EC2EC2CachewarmingDirekter Zugriff mitlokalem Hosteintragzum TestenRDSMySQL
  18. 18. Deployment X+1Release YVarnish ArrayFrontend ArrayELBLoad BalancerWorker ArrayEC2Deployment XEC2Backend ArrayEC2ELBLoad BalancerEC2EC2EC2EC2Deployment / RollbackRoute 53DNS-Serviceshop.angrybirds.com
  19. 19. Downtime während eines Deployments:
  20. 20. Alle Warenkörbe,aktive Logins und Sessionsbleiben beimDeployment / Rollbackerhalten.
  21. 21. Magento, schnell!
  22. 22. Magento Frontend CachingOptimierungsfelder
  23. 23. Frontend-OptimierungenJavaScript / CSS• Bundling (Magento)• Minifying (mit YUI Compressor)• Gzip-Komprimierung (Apache)• Zeitstempel im Dateiennamen für lange CachedauerCache-Header sendenCDN (Cloudfront)• Produktbilder (+ skalierte Versionen), CMS-Bilder,...• Skin• JS/CSSAoe_JsCssTstamp
  24. 24. Magento-OptimierungenLogging reduzierenUncachebare Features entfernenCaching• Asynchronous Cache Clearing Queue• Alte Cache-Einträge löschenCookie Storage von Benutzername und WarenkorbinhaltAjax-Warenkorbund... Profiling, Profiling, Profiling,…(xdebug + kcachegrind, Newrelic, xhprof)Aoe_AsyncCacheAoe_CacheCleaner
  25. 25. 95% der Hitssind cachebar!5% dynamischerInhaltStartseiteKategorienProdukteCMSWarenkorbCheckoutKundenkontoCaching
  26. 26. VarnishReverse ProxyMagentohttp://www.fabrizio-branca.de/make-your-magento-store-fly-using-varnish.htmlCaching
  27. 27. LösungenAoe_StaticCaching +Handling vondynamischem ContentMagneto_VarnishPurging
  28. 28. Lessons learned• 404s sind teuer=> cache or redirect• Cloudfront mit S3 Backendkann kein gzip=> deploy time bundeling/compression• Kein Reports auf der Live-Datenbank!• Man kann nicht alles vorhersagen=> Aber man kann vorbereitet sein, schnell zu reagieren=> continuous deployment
  29. 29. ContinuousIntegration undDeployment
  30. 30. Keine Angst vorProduction-Deployments!
  31. 31. Magento InstallationspaketDatenbank-TabellenDateien*‣htdocs [Magento Source]‣.modman [Custom Packages]InstallerSettings‣URLs‣Datenbank-Parameter‣…* http://www.webguys.de/magento/turchen-08-magento-projekte-mit-dem-module-manager-clever-strukturieren/Dateien‣mediaChangeLogSystem-storageSVNGITSettings
  32. 32. PerformanceTestsAcceptanceTestsUnit-TestsPHPUnitInstallation auf„Latest“SystemBuildDeployment Pipeline
  33. 33. CloudDeploymentProductionIntegrationTestsAOE + RovioCloudDeploymentStagingCopy to S3Deployment PipelineInstallation aufDeploymentSystem
  34. 34. Deployment desneuen ReleasesSpace gamelaunchArray skalierthochUSA wacht aufLaunch!
  35. 35. Besucher/Tag
  36. 36. (echte) Besucher gleichzeitig!
  37. 37. Danke!http://www.aoemedia.dehttp://www.fabrizio-branca.de@aoemedia@fbrnc

×