Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[2016.06 Meetup #3][TALK #1] João Miranda - Zer...

[2016.06 Meetup #3][TALK #1] João Miranda - Zero-Friction Performance Instrumentation And Monitoring

OutSystems Platform offers performance instrumentation, monitoring and troubleshooting capabilities for the applications it creates. The goal is to offer a zero-friction experience without requiring any special instrumentation effort when building the application. We have to decide which metrics to gather, how to gather them and mash it all up in out-of-the-box dashboards.

DevOps Lisbon

June 20, 2016
Tweet

More Decks by DevOps Lisbon

Other Decks in Technology

Transcript

  1. Agenda •  The Context •  The Problem •  The Use

    Cases •  The Solution •  The Operation •  The Results
  2. Code A Visual Model Generate Application Code Deploy To Web

    Server And DB Operate (Monitoring, Security, …) Lifecycle
  3. Project’s Ultimate Goal “Reduce to zero the time taken to

    identify (mobile) performance issues and pinpoint their source”
  4. Module (web application) Desktop / Smartphone / Tablet Remote My

    App DB REST, … Custom C# or Java Common Performance Bottlenecks
  5. Performance Bottlenecks •  Slow (Mobile) Networks •  Slow Queries • 

    Slow Integration Calls (e.g.: SOAP, REST) •  Slow Extension Calls (custom C#/Java code) •  (Select) N+1 – Fast call, but executed many times
  6. Module (web application) Desktop / Smartphone / Tablet Remote Weekly

    Report DB REST, … Custom C# or Java Process
  7. You Know Your Product Best. Find Your Own Common Performance

    Bottlenecks. Present Them In A User-Centered Focus.
  8. Proxy Key Objects Boomerang is a JavaScript library that does

    real user monitoring (RUM). Boomerang provides the auto_xhr plugin. It proxies the XHR object to monitor server requests. Measuring the performance of single page applications
  9. Define And Enforce Coding Guidelines •  Define the standard data

    access libraries •  Define the standard REST client libraries •  Do code reviews •  Leverage sta9c analysis tools
  10. OutSystems Instrumentation Per Request (among many other data points) Endpoint

    metadata End-to-end request duration Server-side duration Slow call (queries, integrations) data Network type Mobile device type
  11. We Have A Few Key Use Cases. But We Don’t

    Want To Keep The Data Trapped.
  12. Best Of Both Worlds Public API Provides Raw Data To

    Cater For All The Other Known (And Unknown) Use Cases
  13. Best Of Both Worlds Web Dashboard, Combined With Automatic Instrumentation,

    Provides Zero-Friction Monitoring For The Key Use Cases Identified During Research Phase