troubleshooter´s top 5: real-world performance tuning of ifs applications

50

Upload: ifs

Post on 20-Aug-2015

397 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications
Page 2: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

© 2013 IFS

Page 3: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

REAL-WORLD PERFORMANCE Troubleshooters Top 5—Real-world performance tuning of IFS Applications

© 2013 IFS

3

Page 4: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Evolution

Configuration

Toolbox

Top 5—performance issues

Questions

AGENDA

© 2013 IFS

4

Page 5: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

JONAS GÖRANSSON Principal Systems Engineer Worked for IFS since 1993 IFS Consulting, IFS R&D

STEFAN LÖVGREN Principal Systems Engineer Worked for IFS R&D since 1999

WHO WE ARE

© 2013 IFS

5

Page 6: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

IFS BENCHMARK TEAM Sizing of IFS Applications (IFS Sizing Guides) Performance testing (development & customer-initiated tests) Customer performance issues (support)

WHAT WE DO

© 2013 IFS

6

Page 7: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

EVOLUTION

Page 8: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

ERP SYSTEM EVOLUTION

© 2013 IFS

8

Page 9: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Different architectures, more complex, more functionality and more integrations.

IFS APPLICATIONS EVOLUTION

© 2013 IFS

9

Page 10: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Easy installation with less configuration

Automatic and self-managed RDBMS

No magic initialization parameters

ORACLE EVOLUTION

© 2013 IFS

10

Page 11: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

16-bit 32-bit 64-bit technology, Memory KB TB

Clock frequency has increased from some MHz to several GHz

Low-end servers cover high-end demands

HARDWARE EVOLUTION

© 2013 IFS

11

Page 12: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Hardware – Low-end servers cover high-end demands

Software – Increased robustness

Architecture complexity – Distributed systems makes troubleshooting harder

EVOLUTION SUMMARY

© 2013 IFS

12

Page 13: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

CONFIGURATION

Page 14: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

HARDWARE

© 2013 IFS

14

CPU Memory

Disk Network

Computer performance

Page 15: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

CONFIGURATION

© 2013 IFS

15

Web server App server DB server

Database processes Server threads

Integration queues Connection threads

Clients

Work load

Page 16: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOOLBOX

Page 17: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Get an overall picture from the complete system under normal conditions

MONITORING

© 2013 IFS

17

DB

WEB

OPTIONAL PRINT

APP

Page 18: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Hardware resources as well as application

Keep historical monitoring data as reference

Specific tools for every part of the system

From overview to detail

MONITOR

© 2013 IFS

18

System resources

Application server

Database

Page 19: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Oracle Enterprise Manager (OEM)

Oracle Workload Repository (AWR)

Free Oracle tools: SQL trace, trcsess, tkprof, Trace Analyzer

3rd party programs: Spotlight, Insider, MyOra

Open Source

In-house admin scripts

TOOLS

© 2013 IFS

19

Page 20: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Holistic approach

Be open-minded

Don’t be biased—the problem can be the unexpected

Don't change more than one thing at the time

Top-down problem-solving

METHODOLOGY

© 2013 IFS

20

Page 21: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Problem definition—define not solve

Identify the problem

Trace to source—trail backwards

Is this the root cause of what is generating the problem?

Do the solution have unforeseen consequences?

Don’t assume that problem is solved until verified

TOP-DOWN PROBLEM-SOLVING

© 2013 IFS

21

Page 22: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES

Page 23: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Code

Index

Locks

Misconfiguration

Parameters

TOP-5 PERFORMANCE ISSUES

© 2013 IFS

23

Page 24: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Non-optimal SQL and PL/SQL code

IN clauses with sub-queries

Loops

Excessive commits

TOP-5 PERFORMANCE ISSUES CODE

© 2013 IFS

24

Page 25: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES CODE

© 2013 IFS

25

Page 26: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Queries not using index

Queries using wrong index

Too many indexes on table

TOP-5 PERFORMANCE ISSUES INDEX

© 2013 IFS

26

Page 27: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES INDEX

© 2013 IFS

27

Use the Advanced button to show which columns

are indexed.

Green arrow = indexed Red arrow = not indexed

Page 28: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES INDEX

© 2013 IFS

28

The Match Case checkbox can be unchecked if you

don’t know whether capitals or lower case letters are

used, but…

…the upper() SQL function in the SQL clause prevents use

of indexes.

Page 29: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES INDEX

© 2013 IFS

29

Count of ”Cancelled historical order

lines”

Page 30: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES INDEX

© 2013 IFS

30

Page 31: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Hot parts / blocks

Number generation, sequences

Legal demands, non-broken number series

TOP-5 PERFORMANCE ISSUES LOCKS

© 2013 IFS

31

Page 32: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES LOCKS—HOT PARTS

© 2013 IFS

32

Page 33: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES LOCKS—HOT PARTS

© 2013 IFS

33

1, Purchase order scenario

3, User load profile

2, User load details

Page 34: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES LOCKS—HOT PARTS

© 2013 IFS

34

Database Locks

Increasing user load

Page 35: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES LOCKS—HOT PARTS

© 2013 IFS

35

Page 36: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES LOCKS—HOT PARTS

© 2013 IFS

36

Increasing response time

Stagnating and decreasing CPU

usage

Page 37: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES LOCKS—HOT PARTS—COMPARE COLD PARTS

© 2013 IFS

37

Purchase Orders using 2000 parts total Purchase Orders using 10 parts total

CPU % Response time

Page 38: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Unbalanced configuration Planning/purchasing new infrastructure Adding infrastructure Extreme load profile

TOP-5 PERFORMANCE ISSUES MISCONFIGURATION

© 2013 IFS

38

Page 39: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES MISCONFIGURATION

© 2013 IFS

39

System change

IFS well working system

Introducing web server For DMZ or other

purpose

Page 40: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES MISCONFIGURATION

© 2013 IFS

40

Introducing web server For DMZ or other

purpose

Page 41: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES MISCONFIGURATION

© 2013 IFS

41

Loadrunner loadtest 1-200 users

Page 42: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES MISCONFIGURATION

© 2013 IFS

42

Original configuration Changed configuration

CPU % Response time Transactions/sec

Page 43: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES MISCONFIGURATION

© 2013 IFS

43

Introducing web server For DMZ or other

purpose

Page 44: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES MISCONFIGURATION

© 2013 IFS

44

CPU % Response time Transactions/sec

Original configuration Changed configuration

Page 45: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

shared_pool_size

db_cache_size

sga_max & sga_target

pga_aggregate_target

processes

optimizer_index_cost_adj

undo_retension

TOP-5 PERFORMANCE ISSUES—PARAMETERS

© 2013 IFS

45

Page 46: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

TOP-5 PERFORMANCE ISSUES PARAMETERS—OPTIMIZER_INDEX_COST_ADJ

© 2013 IFS

46

optimizer_index_cost_adj=10

optimizer_index_cost_adj=1000

Page 47: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

SUMMARY

Page 48: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

Balance infrastructure against workload

Monitor all components in the system

Have a prepared toolbox

SUMMARY

© 2013 IFS

48

Page 49: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

© 2013 IFS

49

Page 50: Troubleshooter´s Top 5: Real-world performance tuning of IFS Applications

THIS DOCUMENT MAY CONTAIN STATEMENTS OF POSSIBLE FUTURE FUNCTIONALITY FOR IFS’S SOFTWARE PRODUCTS AND TECHNOLOGY. SUCH STATEMENTS OF FUTURE FUNCTIONALITY ARE FOR INFORMATION PURPOSES ONLY AND SHOULD NOT BE

INTERPRETED AS ANY COMMITMENT OR REPRESENTATION. IFS AND ALL IFS PRODUCT NAMES ARE TRADEMARKS OF IFS. THE NAMES OF ACTUAL COMPANIES AND PRODUCTS MENTIONED HEREIN MAY BE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

www.IFSWORLD.com

© 2013 IFS