because performance matters! open source application ... · inspectit-docker inspectit . 15...

Post on 18-Sep-2020

11 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Because performance matters!

-

Open Source Application Performance

Monitoring for the Crowd

08.06.2016 2

Visual Comparison

http://www.webpagetest.org - Tested from Dulles, VA - Chrome

08.06.2016 3

Perfomance Problems are Omnipresent

An unexpected

error occured Temporarily

not available Try again later

08.06.2016 4

Business Impact of Performance

Every 100ms page load improvement increases revenue by 1% (2008) 2008: 19,17 Mrd € 191,7 Mio € 2013: 74,51 Mrd € …

1 seconds delay reduces revenue by 3% (2010)

32% of all users leave a page if the load time is between 1-5 seconds (2010)

The perceived load time is 15% higher. The remembered load time even 35%. (2010)

08.06.2016 5

Performance as Direct Competitive Factor

… because performance matters!

AGENDA

1. The inspectIT Team

2. Overview

3. Live Demo: Working with inspectIT

4. Outlook

5. Automatic Diagnosis of Performance Problems

6. Live Demo: Automated Diagnosis

ACTIVE CONTRIBUTORS

Ivan

Senić

Patrice

Bouillet

Mario

Mann

Alexander

Wert

Thomas

Kluge

Christian

Abele

Jonas

Kunz

Marius

Oehler

Max

Wassiljew

Matthias

Huber

René

Kugel

Tobias

Angerstein

Christoph

Heger

Stefan

Siegl

OVERVIEW ON INSPECTIT

Database

Server Client Browser

Request

Response

Query

Result

Application

Server

0.2s 0.3s 0.1s 5.4s

0.1s 0.4s 0.5s

0.3s 5.4s

7.3s

Visualization

(fictional timings)

Overview

Data Analysis

Data Recorder

Architecture

System Node 1

JVM

App 1

App 2

System Node n

Target

System

Central

Measurement

Repository

inspectIT RCP

Agent

Agent

08.06.2016 14

Docker Container

Application Container

+ inspectIT Agent

CMR inspectIT RCP

inspectIT-docker

inspectit

08.06.2016 15

Installation

Download http://github.com/inspectIT/inspectIT/releases

Central Measurement Repository (CMR) startup.sh / startup.bat

Instrumentation Configuration Mapping

Environment ↔ Agent

Agent -javaagent:<PATH_TO>/inspectit-agent.jar -Dinspectit.repository=<CMR_IP>:9070;<Agentname>

Hands on

Live Demo

08.06.2016 16

Sensors

Timer Sensor

Invocation Sequence Sensor

Datenbank/SQL Sensor

Logging Sensor

08.06.2016 17

Blog Post: Stefan Siegl – „Creating an inspectIT sensor“

http://goo.gl/5cER11

Exception Sensor

HTTP Data Sensor

System Information Sensor

JMX Sensor

OUTLOOK

Outlook

Business Context Q1/2016

Distributed Traces Q2/2016

End User Monitoring Q4/2016

Monitoring in Production 2017

Adaptive Instrumentation 2017

Automated Diagnosis 2017

08.06.2016 19

Estimation Feature Sponsoring

AUTOMATIC DIAGNOSIS OF

PERFORMANCE PROBLEMS

Manual Analysis

Perception of

the Problem

Reading of

Metrics

Unscalable

Analysis

08.06.2016 21

Automatic Diagnosis of Performance Problems

Automated Analysis

Semantification

of Performance

Problems

Interpretation

of Quantitative

Data

Isolation of

Problem Root

Causes

Categorization

of Performance

Problems

Automatic Diagnosis of Performance Problems

08.06.2016 22

Rules

Root Cause Isolation Semantification Clustering

Invocation

Sequences

anti-pattern recognition

„Select n+1 anti-pattern“

08.06.2016 23

Hands on

Live Demo – Preview

(Automated Diagnosis)

inspectIT & Continuous Integration

08.06.2016 25

0

1

2

3

1 2 3 4 5 6 7

Re

sp

on

se

T

ime

[s

]

Execution Nr.

System Under Test Load Driver

e-2-e response times

load data

detailed

measurement

data

performance

problems

08.06.2016 26

Contribute

troubleshooting

continuous

integration

development

production performance

awareness

coaching

star & watch

on GitHub

write about

like & spread

tweets

tell colleagues

about

promote use inspectIT

feedback provide

bug reports

vote

feature requests

create

feature requests code

bug fixes

documentation

icons & images

ecosystem

experience

reports

customer

reference

new ideas

Contribute

SPONSOR

Consulting Domains

@novatecgmbh

Stuttgart

Berlin Frankfurt

München

more than 200 colleagues

founded 1996

Agile Methods & Processes

Service Oriented Architecture and Technology

Business Process Management

Application Performance Management

Agile Quality Engineering

Enterprise Application Development

Get in touch with us

www.inspectIT.rocks

@inspectIT_APM

inspectIT

inspectIT-docker

08.06.2016 28

inspectit

Application Cases of inspectIT and diagnoseIT

Current State

Performance Analysis & Troubleshooting

Performance Awareness in Development

Continuous performance testing as part of Continuous Integration

Collaboration between Testing and Development Teams

Work in Progress

Monitoring in Production

inspectIT as Platform Service in Cloud Foundry

08.06.2016 29

Overview

Node 1

JVM

App 1

App 2

Node n

SUT

Traces

CTA

Instrumentation

Refinement Request

Instrumentation

Language Result

Result Description

Language

Monitoring Tool

Dynamic

Instrumentation

API Labelling

Location

Identification

Instrumentation

Quality Manager

Result Query

Diagnosis

Trace

Traces

CTA

Rule

Retrieve

information from

Notify on tagging

Problem

Instance

Repository

Manage

Tag

Instrumentation Refinement Request

Instrumentation

Language

Insight

Enrichment

Information

Request

Maintain Problem

Instance Problem

Instance

Create/Update

Result Description

Language

Mo

nito

rin

g T

oo

l

Common Trace API

https://goo.gl/UuoZkN

Join us

APM vendor independent data access

Goal

Monitoring data format is tool-specific

Motivation

APM vendor lock-in limits

interoperability and data exchange

Drawback

Importers

Planned

(http://goo.gl/5S337v)

(http://goo.gl/AAwdge)

(https://goo.gl/eDuA9R)

(http://goo.gl/3xM2ur) (http://goo.gl/KCWimU)

(http://goo.gl/z18Tuj)

(http://goo.gl/B3rJt4)

Profiler

fine-grained profiling

method inefficiencies

object allocation

threads

developers

very high

application unit

08.06.2016 33

inspectIT is not a Profiler!

APM (inspectIT)

End-to-end behaviour analysis

invocation flow

transactions

Business context

developers, operations, management

negligible (configurable)

application unit software system

Purpose

Target User Group

Performance Overhead

Scope

top related