Designing a Workload Scenario for Benchmarking Message-Oriented - - PowerPoint PPT Presentation

designing a workload scenario for benchmarking message
SMART_READER_LITE
LIVE PREVIEW

Designing a Workload Scenario for Benchmarking Message-Oriented - - PowerPoint PPT Presentation

Designing a Workload Scenario for Benchmarking Message-Oriented Middleware Kai Sachs*, Kai Sachs*, Samuel Kounev Samuel Kounev* * , , Marc Carter , , Marc Carter Alejandro Buchmann Buchmann* * Alejandro * Databases


slide-1
SLIDE 1

Designing a Workload Scenario for Benchmarking Message-Oriented Middleware

Kai Sachs*, Kai Sachs*, Samuel Samuel Kounev Kounev* *† †, , Marc Carter Marc Carter ‡ ‡, , Alejandro Alejandro Buchmann Buchmann* *

* Databases and Distributed Systems Group, TU Darmstadt / Germany * Databases and Distributed Systems Group, TU Darmstadt / Germany

† † Computer Laboratory, University of Cambridge / UK

Computer Laboratory, University of Cambridge / UK

‡ ‡ IBM

IBM Hursley Hursley Labs, Labs, Hursley Hursley Park, Winchester / UK Park, Winchester / UK

slide-2
SLIDE 2

2

Overview

  • I. Introduction
  • II. Workload Requirements and goals
  • f the SPECjms benchmark
  • III. Application Scenario for SPECjms

IV.Implementation Details

  • V. Summary
slide-3
SLIDE 3

3

Message Oriented Middleware (MOM)

 Used in many business domains

 Financial services and enterprise applications  Health care  Supply chain  ...

 And in many technologies

 Enterprise Service Bus (ESB)  Service Oriented Architecture (SOA)  Enterprise Application Integration (EAI)  ...

 Increasing importance

Need for benchmark

slide-4
SLIDE 4

4

Requirements of a MOM benchmark

 Scenario representative of real-world applications.  Exercise all critical services provided by platforms.  Not optimized for a specific product.  Reproducible results.  No inherent scalability limitations.

slide-5
SLIDE 5

5

Current State of MOM Benchmarking

 Many proprietary benchmarks for MOM servers

 Used for performance testing and product comparisons

However:

 These benchmarks do not meet all of the defined

requirements

Typically they...

 concentrate on stressing individual MOM features, and  do not provide a comprehensive and representative

workload for evaluating the overall MOM performance

 Currently no industry-standard benchmark for

MOM Benchmarking SPECjms 2007

slide-6
SLIDE 6

6

What is SPECjms 2007?

 World’s first industry standard benchmark for MOM

products supporting Java Message Service (JMS)

Developed by the SPEC OSG-Java subcommittee with the participation of:

IBM

TU Darmstadt

Sun

Sybase

BEA

Apache

Oracle

JBoss

slide-7
SLIDE 7

7

Goals of SPECjms 2007

  • I. Provide a standard workload and

metrics for measuring and evaluating JMS-based platforms II.Provide a flexible framework for JMS performance analysis

slide-8
SLIDE 8

8

Overview

  • I. Introduction
  • II. Workload Requirements and goals
  • f the SPECjms benchmark
  • III. Application Scenario for SPECjms

IV.Implementation Details

  • V. Summary
slide-9
SLIDE 9

9

Categories of Workload Requirements

 Representativeness  Comprehensiveness  Focus  Scalability  Configurability

slide-10
SLIDE 10

10

Categories of Workload Requirements

 Representativeness  Comprehensiveness  Focus  Scalability  Configurability

slide-11
SLIDE 11

11

Representativeness

The goal:

 Allow users to relate the observed behavior to their

  • wn applications and environments.

 Should simulate the way platform services are

exercised in real-life systems. Therefore:

 It should be based on a representative workload

scenario:

 Communication style and the types of messages should

represent a typical transaction mix.

slide-12
SLIDE 12

15

Scalability

 Dimensions of scaling the workload :

Horizontal scaling:

 De/Increase the number of destinations (queues and topics)  Keep the traffic per destination constant

Vertical scaling:

 De/Increase traffic per destination  Keep the number of destinations fixed

 Preserve real-life relationships in modeled scenario  Additionally: Support for freeform scaling,

e.g. user defined traffic per destination and number of destinations

slide-13
SLIDE 13

16

Configurability I

 Provide a flexible performance analysis tool:

 Allows users to configure and customize the workload,

e.g. for research purposes

 Produce and publish standard results e.g for

marketing purposes Therefore:

 Need for a framework which supports

 tuning,  analyzing and  optimizing

performance of certain features / platforms

slide-14
SLIDE 14

17

Configurability II

 A benchmark framework should allow:

 precise configuration of workload and transaction mix  to switch off business interactions

(implies that interactions should be decoupled)

 Providing such a configurability is a great challenge:

 Freeform mode:

Design and implement interactions so that they can be run in different combinations depending on the desired transaction mix

 Standard mode:

It has to be ensured, that the interactions always behave like defined in the application scenario

slide-15
SLIDE 15

18

Overview

  • I. Introduction
  • II. Workload Requirements and goals
  • f the SPECjms benchmark
  • III. Application Scenario for SPECjms

IV.Implementation Framework

  • V. Summary
slide-16
SLIDE 16

19

The Application Scenario

 Represents a supply chain of a supermarket

company.

 Participants:

Headquarters (HQ) Supermarkets (SM) Distribution Centers (DC) Suppliers (SP).

 Based on the previously discussed requirements.

slide-17
SLIDE 17

20

The Application Scenario

Why again a Supply Chain Scenario?

 Excellent basis for defining different interactions:

Many destinations, use cases, ...

 Typical real word application  Importance of performance (RFID!)  Allows scaling the workload in a natural way:  Horizontal: e.g. scale the number of SMs  Vertical: e.g. scale amount of products sold per SM

slide-18
SLIDE 18

21

Participants

Company HQ Super- markets Distribution Centers

= goods and information flow =

  • nly information

flow

Supplier

slide-19
SLIDE 19

22

Participants - Supermarkets

Company HQ Super- markets Distribution Centers

= goods and information flow =

  • nly information

flow

Supplier Supermarket (SM)

  • sells goods to end customers.
  • manages its inventory.
  • every supermarket offers

different products.

  • every supermarket is

supplied by exactly one of the distribution centers.

slide-20
SLIDE 20

23

Participants - Distribution Center

Company HQ Super- markets Distribution Centers

= goods and information flow =

  • nly information

flow

Supplier Distribution Center (DC)

  • supplies the supermarket stores which sell goods to end customers.
  • responsible for a set of stores in a given area.
  • is supplied by external suppliers.
slide-21
SLIDE 21

24

Participants - Suppliers

Company HQ Super- markets Distribution Centers

= goods and information flow =

  • nly information

flow

Supplier Supplier (SP)

  • deliver goods to distribution centers (based on an offer of the supplier).
  • not every supplier offers the same products.
  • offers either all products of a given product family or none of them.
slide-22
SLIDE 22

25

Participants - HQ

Company HQ Super- markets Distribution Centers

= goods and information flow =

  • nly information

flow

Supplier Company HQ

  • manages the accounting of the company.
  • manages information about the goods and products.
  • manages selling prices.
  • monitors the flow of goods and money in the supply chain.
slide-23
SLIDE 23

26

Business Interactions

The following interactions are part of the scenario:

  • 1. Order / Shipment Handling (SM / DC)
  • 2. (Purchase) Order / Shipment Handling (DC / SP)
  • 3. Price Updates
  • 4. Inventory Management
  • 5. Sales Statistics Collection
  • 6. Product Announcements
  • 7. Credit Card Hotlists
slide-24
SLIDE 24

27

Business Interactions

The following interactions are part of the scenario:

  • 1. Order / Shipment Handling (SM / DC)
  • 2. (Purchase) Order / Shipment Handling (DC / SP)
  • 3. Price Updates
  • 4. Inventory Management
  • 5. Sales Statistics Collection
  • 6. Product Announcements
  • 7. Credit Card Hotlists
slide-25
SLIDE 25

33

Example: Interaction 2

Purchase Order / Shipment Handling (DC & SPs)

 Point-to-Point and Publish/Subscribe

communication.

 Inter company communication.  Includes six steps

slide-26
SLIDE 26

34

Interaction 2 Purchase Order / Shipment Handling

Company HQ Super- markets

Suppliers Supermarket Company

Distribution Centers

= goods and info flow = only info flow

1 1 1. DC sends a call for offers.

slide-27
SLIDE 27

35

Interaction 2 Purchase Order / Shipment Handling

Company HQ Super- markets

Suppliers Supermarket Company

Distribution Centers

= goods and info flow = only info flow

2 2

2.

All SPs offering the requested products send an offer.

slide-28
SLIDE 28

36

Interaction 2 Purchase Order / Shipment Handling

Company HQ Super- markets

Suppliers Supermarket Company

Distribution Centers

= goods and info flow = only info flow

3 3. Based on the offers, the DC selects a SP and sends a purchase order to it.

slide-29
SLIDE 29

37

Interaction 2 Purchase Order / Shipment Handling

Company HQ Super- markets

Suppliers Supermarket Company

Distribution Centers

= goods and info flow = only info flow

4 4 4.a SP sends an order confirmation to the DC 4.b SP sends an invoice to the HQ 4.c The SP dispatches a shipment to the DC.

slide-30
SLIDE 30

38

Interaction 2 Purchase Order / Shipment Handling

Company HQ Super- markets

Suppliers Supermarket Company

Distribution Centers

= goods and info flow = only info flow

5 5. The shipment arrives at the DC and confirmation is sent to the SP.

slide-31
SLIDE 31

39

Interaction 2 Purchase Order / Shipment Handling

Company HQ Super- markets

Suppliers Supermarket Company

Distribution Centers

= goods and info flow = only info flow

6 6. The DC sends a message to the HQ (transaction statistics).

slide-32
SLIDE 32

40

Overview

  • I. Introduction
  • II. Workload Requirements and goals
  • f the SPECjms benchmark
  • III. Application Scenario for SPECjms

IV.Implementation Details

  • V. Summary
slide-33
SLIDE 33

41

Message Types and Destinations

19 different messages are defined:

 Three different sizes per message (small, medium,

large) with a certain probability

 Acknowledgment mode:

 Standard: AUTO_ACKNOWLEDGMENT

(can be changed in several interactions)

 All messages types supported by the JMS

Specification excepted ByteMessages

 (Non-)Persistent, (Non-)Transactional, Durable, ...

slide-34
SLIDE 34

42

Message Types and Destinations

 Number of queues per location instance:  Number of topics:

3 + one for every product family

6 DC 4 HQ 2 SP 3 SM

  • No. of queues

Location

slide-35
SLIDE 35

44

Driver Framework

 Many locations represented by many event handlers

(message consumers)

 Event handlers may be distributed across many

physical machines.

 Reusable driver framework addresses this issues

without any inherent scalability limitations.

 Plain Java  Maximum choice in laying out workload to achieve

maximum performance.

slide-36
SLIDE 36

45

Driver Framework

slide-37
SLIDE 37

46

A Flexible Framework for Performance Analysis

 Allows to configure and customize the workload /

transaction mixes

 Provides three different topologies corresponding to three

different modes in which the benchmark can be run:

Vertical

Horizontal

Freeform

 Many features

slide-38
SLIDE 38

47

A Flexible Framework for Performance Analysis

Some features:

 Number of physical locations (HQ, SM, DC, SP) emulated.  Number of agents representing a single physical location.  Number of event handlers in an agent of each type.  Number of driver instances for each interaction.  Total number of invocations of each interaction (as an

alternative to specifying a rate).

 Message size distributions for each interaction.  The driver nodes on which agents are run.  Number of JVMs run on each node and the way agents are

distributed among them.

 Number of javax.jms.Connection objects shared amongst

event handler classes within a single agent.

 ....

slide-39
SLIDE 39

48

Overview

  • I. Introduction
  • II. Workload Requirements and goals
  • f the SPECjms benchmark
  • III. Application Scenario for SPECjms

IV.Implementation Details

  • V. Summary
slide-40
SLIDE 40

49

Summary

 The presented scenario models a set of interactions in

the supply chain of a supermarket company.

 These interactions are used as a basis in SPEC's new

SPECjms benchmark.

 SPECjms will be the world's first industry-standard

benchmark for MOM products.

 SPECjms can be used to stress and evaluate the

different aspects of JMS performance.

 SPECjms is more than a benchmark:

Offers also a performance analysis tool for JMS-based infrastructures.

slide-41
SLIDE 41

53

Thanks for your attention