software that eats the world! - performday brussels

Post on 16-Apr-2017

108 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Software that eats the

world!Klaus Enzenhofer @kenzenhofer

2011“In Short,

Software is eating the

world!”https://en.wikipedia.org/wiki/Marc_Andreessen

Largest companies in the world by Market Cap

Rank 2011 2012 2016 (Q3)#1 Exxon Mobil Apple Apple#2 Petro China Exxon Mobil Alphabet (Google)#3 Apple Inc. Petro China Microsoft#4 ICBC Microsoft Amazon#5 Pertobras IBM Facebook

3 Things to cover Today!

Let‘s start withyou!

The „I get paid at the end of th

e month“- dashboard

3 Things to cover Today!

Cloud

WHY?Cost Savings

Flexible EASY

Maintenance

We need to go cloud!

Anyone Failed?Anyone had an issue?

Do NOT trust the cloud!

Lesson learned #1:

Constantly test the APIs and their responses

DBDB

CLOUD Based ApplicationsWeb

Web

AppServer A

AppServer B

DB

AppServer A is going down!

Thanks for telling me a week too late!*****

vCPU != physical CPU

Lesson learned #2:

actually 1 vCPU = ½ physical Core

vCPU != physical CPU

test your sizing in the cloud!

Hybrid deployments are complex

Lesson learned #3:

Data Center ApplicationsWeb

Legacy

CRM

AppServerAppServer

AppServerAppServer

AppServerAppServer

DB

MF

3rd Party

WebWeb

AppServerAppServer

AppServer

DBDB

DB

CLOUD Based ApplicationsWeb

Web

AppServer

AppServer

DB

Data Center Applications

Web AppServer DB

CLOUD

Server Server Server Server

Data Center Applications

Web AppServer DB……

I cannot handle domain names!Give me an IP

Work with your provider!

Lesson learned #4:

Microservices+

3 Things to cover Today!

Let‘s finish withyou!

Who is doing SLA Monitoring?

Any one a salary depending on it?

Any changes lately?

Google - Mobile Friendliness Campaign?!

Contract SLA: Average Response Time < 3

sec

User

on Desktop + Mobile

Good idea?!

4.5 sec 15 sec

UserDeveloper Operator

Let‘s take a look at the timings!Navigation Start: 0 ms

Domain Lookup End: 269 ms

Connect End: 330 ms

Response Start: 517 ms

Response End:518 ms

Dom Loading: 519 ms

Dom Interactive: 519 ms

DomContentLoaded Event End: 520 ms

Dom Complete: 520 ms

Load Event End:522 ms

0.5 sec 0.5 sec

Developer

User Operator

User

DNS Lookup

Initial connection

TTFB

(HTML)Download

Life of an URL request

Starting here, we are able to control …

<script src=“angular.js”> blocking!

<script src=“angular.js”> blocking!<script src=“main.js”> blocking!

<script src=“angular.js”> blocking!<script src=“main.js”> blocking!

start render

<script src=“angular.js”> blocking!<script src=“main.js”> blocking!

start renderresponse time

Server-side rendering for SPA

Brow

ser

App

Serv

ing

asse

tsAP

I Ser

ver

GET /app

JavaScript payload

GET /api/users

JSON payload

GET /api/posts

GET /api/pages

JSON payload

JSON payload

Send index.html

Request JS application

Brow

ser

App

Uni

vers

al re

nder

ing

API S

erve

r

GET /app

JavaScript payload

GET /api/users

JSON payload

GET /api/posts

GET /api/pages

JSON payload

JSON payload

Initial render HTML + CSS

Request JS application

4.5 sec 6 sec

UserDeveloper Operator

Operator

The CDN bill exploded!

285 Resources for an initial Page Load

151 CSS and 121 JavaScript files

~200 Resources had larger Header than Body

User

Mobile Data is expensive

https

://w

hatd

oesm

ysite

cost

.com

http://cdn.shopify.com/s/files/1/1462/9702/articles/26_cangoroo_1024x1024.jpg?v=1473016235

Back Home

Back Home

HTTP Archive – Transfer Size Trend

http://httparchive.org/trends.php

Average Size ~2 500 KB By 1.6 € per 100 KB

40 € to get started!!!!

2. Page weight

There’s lots of ways to reduce the payload

Reduce styles

Tree-Shaking to reduce JS

2 sec 2.5 sec

UserDeveloper Operator

QuestionsSlides: slideshare.net/kenzenhoferGet Tools: bit.ly/dtpersonalYouTube Tutorials: bit.ly/dttutorialsContact Me: klaus.enzenhofer@dynatrace.comFollow Me: @kenzenhoferRead More: blog.dynatrace.com

Klaus EnzenhoferDirector Technology Strategy@kenzenhoferhttp://blog.dynatrace.com

top related