measured availability - sanjay singh - devops bangalore meetup march 28th 2015
TRANSCRIPT
![Page 2: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/2.jpg)
Agenda
• FCI – Failed Customer Interac@on • TP – Top Percen@le • RUM • RUM with SPA
![Page 3: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/3.jpg)
Availability and Down@me
![Page 4: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/4.jpg)
FCI
• FCI is Failed Customer Interac@on which is measured for a par@cular page/workflow. – A customer interac@on can be page view, form submission, etc. In HTTP terms, customer’s interac@ons are GET/POST request.
– If the page response is not as per the expected behavior of the applica@on, then it’s a failed customer interac@on.
![Page 5: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/5.jpg)
How is FCI calculated ?
• FCI is calculated on per page basis. If page execu@on is not as per the expected behavior, then it is counted as failure.
• Iden@fy all failure cases and log it appropriately on the server with user session’s info.
![Page 6: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/6.jpg)
Performance
• As per Google –
• Increasing web search latency 100 to 400 ms reduces the daily number of searches per user by 0.2% to 0.6%.
• Users do fewer searches the longer they are exposed.
• For longer delays, the loss of searches persists even aYer latency returns to previous levels.
![Page 7: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/7.jpg)
Performance Measurement
• Top Percen-le (TP) is a method to find minimum @me in which (X) amount of requests were served. – Example: If the TP90 of a page is 2 sec, then it means 90% of the requests were served within 2 seconds.
![Page 8: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/8.jpg)
RUM with SPA • What is RUM?
– RUM = Real User Monitoring, is the actual measure of how long a page took to render and become usable for a real user. It is the measure of a page’s speed by measuring the @me it takes for "PAGE READY" state, and not only the @me it took for data to be downloaded.
• Web is moving towards Single Page Architecture
• Most of Exis@ng tools stop at the onLoad() and are not sufficient to get the real measure of the end user performance and cannot tell the PAGE READY state
• SPA world -‐ most of the processing starts when onLoad() ends
• Need to measure processing @me for various user ac@ons heavy on the client side
![Page 9: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/9.jpg)
Measured Availability using NewRelic RUM
9
Web Servers With NewRelic agents
MA reads metrics from NewRelic insights
NewRelic Plugin sends page load 9me, url, success code to NewRelic servers
Customer interac9ons with Web servers.
Web servers respond to customer’s requests along with NewRelic RUM plugin.
Measured Availability Dashboard
Customer Browser
![Page 10: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015](https://reader035.vdocument.in/reader035/viewer/2022071710/55aae77f1a28abf95d8b465c/html5/thumbnails/10.jpg)
Measured Availability Formulae
10
NOTE: “Outage” is number of transac@ons that were impacted during planned or unplanned down@me.
MA(%) = (TotalTransactions− (ServerErrors+ SlowTrasanctions+Outage))TotalTransactions
×100