How Synthetic Monitoring Helps Optimize Web Performance

Preview:

Citation preview

How Synthetic Monitoring Helps Optimize Performance

Presented by: Xoan Vilas, Performance Lead, trivago

Xoan Vilas - @xo4n

55 live platforms

DUS

SFO

CANHKG

Xoan Vilas - @xo4n

FactSheet Some data values to get an idea

Unique visitors:   120 Million/month Number of Web requests: 230 Million/day CDN images traffic: 350TB/month Image Requests: 12 Billion/month  

Xoan Vilas - @xo4n

Performance strategy

  End User Experience

Synthetic MonitoringReal User Monitoring (RUM)Traffic mirroring

Analytics Reporting

Components DeepDive

Application Architecture

Dimension Area of focus Objective

Metrics collection and standardisation Real time metrics visualisation with per 10 second resolution

Measure and improve user performance perception

Backend application profiling Frontend application profiling Log data discovery

Transaction flow Unique identifier

Application and hardware optimisation Capacity planning Trends reporting Bottlenecks and anomalies detection

Improve code for better performance Automate code performance measurementsFind code errors and patterns

Mapping transactions and applications to the underlaying infrastructure

Xoan Vilas - @xo4n

Backend Performance

Xoan Vilas - @xo4n

Backend performance overview

Top 3 changes in 2016 with the biggest performance impact

Xoan Vilas - @xo4n

Upgrade to PHP7

Lower memory & CPU consumption & faster responses *

*) https://twitter.com/xo4n/status/734762501867442176

Xoan Vilas - @xo4n

Higher CPU clock speed

From 2.60Ghz to 3.07Ghz > 70ms faster PHP response time *

*) https://twitter.com/xo4n/status/755774522146557952

Xoan Vilas - @xo4n

Impact in conversionsfaster responses lead to more conversions. Case studies in wpostats.com already indicated that

Xoan Vilas - @xo4n

Frontend Performance

Xoan Vilas - @xo4n

Webpack & JS startup improvements

#1 Reduce asset size by loading features on demand #2 Asset caching #3 Prioritise users over collecting data #4 Inline SVG icons

http://tech.trivago.com/2016/08/19/js-startup-improvements/

Xoan Vilas - @xo4n

Xoan Vilas - @xo4n

Prioritising users vs collecting data

Xoan Vilas - @xo4n

Number of items per page Year to Year js files increase after the introduction of WebPack

Xoan Vilas - @xo4n

Inline SVG iconsWe improved the maintenance of trivago icon system and got better performance as a bonus

http://tech.trivago.com/2016/09/05/inline-svg-icon-system/

Xoan Vilas - @xo4n

Moving to HTTPS The road to #pwa

Xoan Vilas - @xo4n

Moving to HTTPS Keep an eye on latency impact and 3rd parties SSL performance

Xoan Vilas - @xo4n

Introducing HTTP2 The road to #pwa

Xoan Vilas - @xo4n

trivago in China

Xoan Vilas - @xo4n

Custom setup

Mixed hosting in Mainland and HongKong

Xoan Vilas - @xo4n

Backend performance improvement

MPLS line between datacenter in mainland China and HKG

Xoan Vilas - @xo4n

DNS performance

The importance of DNS is often forgotten and has big impact

Xoan Vilas - @xo4n

Third parties performance in China

trivago improved response times but 3rd parties not

Xoan Vilas - @xo4n

Troubleshooting and Feature performance

Xoan Vilas - @xo4n

CDN evaluation ChinaCache vs ChinaNetCenter

Xoan Vilas - @xo4n

CDN configuration ChinaCache set up

Xoan Vilas - @xo4n

CDN issues Edgecast outage

Xoan Vilas - @xo4n

Assets delivery Assets caching issues caused by Varnish miss configuration

Xoan Vilas - @xo4n

Third party issues Miss configured 3rd parties on trivago’s brazilian platform

Xoan Vilas - @xo4n

Feature testing Compare performance of different features

Xoan Vilas - @xo4n

room5trivago’s online hotel magazine

Xoan Vilas - @xo4n

Content Marketing Scaling and optimizing a wordpress blog on AWS

Xoan Vilas - @xo4n

Higher CPU clock speed

From 2.60Ghz to 3.07Ghz > 70ms faster PHP response time *

*) https://twitter.com/xo4n/status/755774522146557952

Xoan Vilas - @xo4n

Facebook token

Query optimizationPHP7

Cache2 weeks

Performance optimisations

Xoan Vilas - @xo4n

Results after optimisations

Xoan Vilas - @xo4n

Analyze ImproveMeasure

THANK YOU! Please don’t forget to fill out the mobile app survey for this session

Recommended