biztalk 2009 performance ewan fairweather tim wieman paolo salvatori biztalk customer advisory team...

23
BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Upload: dana-king

Post on 04-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

BizTalk 2009 Performance

Ewan FairweatherTim WiemanPaolo Salvatori

BizTalk Customer Advisory Team (CAT)Microsoft Corporation

SBPCT301

Page 2: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Session Objectives

• Session Objective(s): − Provide illustrative examples of

successful performance labs.− Provide information on the tools,

techniques and processes used by the Rangers to run effective BizTalk performance labs.

− Answer BizTalk performance related questions.

Page 3: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Agenda

• Results for Customer Performance Lab

• Initial results for BizTalk 2009 Performance Lab

• Visual Studio Test Demo

• Optimization Highlights & Open Q&A

Page 4: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Skandia Background

• Existing ASP.NET COM+ based internet bank• New version of internet bank:

− Go-live November 2008− SOA based − BizTalk used as Skandia’s Service Bus

− Leverages investments Skandia have made in IKForetag (Insurance application)

− Current throughput 100,000 requests per day− Two-year projected growth to 250,000 requests per day − Will solidify BizTalk/WCF as the messaging platform for the

bank

• Ranger involvement− ADR delivered June 2008− Performance Lab scheduled September 2008

Page 5: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Skandia Performance Lab GoalsDetermine if the BizTalk Server 2006 solution can meet the following performance requirements given hardware and software constraints:

• Scenario 1− Orchestration scenario− Throughput: 250,000 calls within 8 hours

~9 messages/sec sustainable− Latency: < 3 seconds for 99% of all response messages

• Scenario 2− Messaging scenario− Throughput: 250,000 calls within 8 hours

~9 messages/sec sustainable− Latency: < 3 seconds for 99% of all response messages

• Conditions− No restriction on code changes− Additional hardware can be used if necessary

• Start the solution testing with 2 BizTalk Server nodes and scale out to 4 BizTalk Server nodes

• Considerable knowledge transfer

Page 6: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Skandia Scenarios Overview

• Scenario 1: Orchestration

• Scenario 2: Messaging only

Page 7: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Scenario 1 Message FlowOrchestration Scenario

12

3 4

5

6

Page 8: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Skandia Scenario 1 Results Summary

• ~333% throughput improvement*• ~195% of throughput requirements*• Latency reduced to ~29% of original

value*• Stability validated by long running

test*2 BizTalk Node Configuration

TestConcurrent Test Client Users

Messages Per Second

Avg Response (ms)

% < 3 seconds

Messages Per Day

Test LengthGoal

Test Case 1 Baseline2 BizTalk Node Configuration

27 5.09 5476 41.13% ~147,000 30 minutes

99% of messages <3 seconds9 messages/second250,000 per day

4 BizTalk Node Configuration

27 4.93 5301 37.96% ~142,000 30 minutes

Test Case 1 Optimized Results2 BizTalk Node Configuration

27 16.99 1580 99.75% ~489,000 15 hours

99% of messages <3 seconds9 messages/second250,000 per day

4 BizTalk Node Configuration

27 17.41 1542 99.55% ~501,000 15 minutes

1 2 3

5 6 7

4

8

Page 9: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Scenario 2 Message FlowMessaging only

1

2 3 4

Page 10: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Skandia Scenario 2 Results Summary

• ~480% throughput improvement*• ~2000% of throughput requirements*• Latency reduced to ~36% of original

value*• Stability validated by long running

test*2 BizTalk Node Configuration

TestConcurrent Test Client Users

Messages Per Second

Avg Response (ms)

% < 3 seconds

Messages Per Day

Test LengthGoal

Test Case 2 Baseline2 BizTalk Node Configuration

27 37.2 720 98.8%~1,071,000

30 minutes

99% of messages <3 seconds9 messages/second250,000 per day

4 BizTalk Node Configuration

27 32.4 825 96.2% ~933,000 30 minutes

Test Case 2 Optimized Results2 BizTalk Node Configuration

50 178.32 26599.999%

~5,135,000

15 hours

99% of messages <3 seconds9 messages/second250,000 per day

4 BizTalk Node Configuration

50 243.08 197 99.95%~7,000,000

15 minutes

1 2 3

5 6 7

4

8

Page 11: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

• Results for Customer Performance Lab

• Initial results for BizTalk 2009 Performance Lab

• Visual Studio Test Demo

• Optimization Highlights & Open Q&A

Agenda

Page 12: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Logical Ports Test Scenario

Logical Port Orchestration

Page 13: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

TestConcurrent Test Client Users

Messages Per Second

Avg Response (s)

% < 3 seconds

Messages Per 8-hour Day

Test Length

Logical Ports on Optimized Platform

R2 64 bit Orch 100 58.06 1.69 97.5 ~1,672,000 10 minutes

2009 64 Bit Orch 100 60.64 1.61 97.97 ~1,746,000 10 minutes

2009 Hyper-V 100 52.96 1.86 94.8 ~1,520,000 10 minutes

Performance Comparison Summary

Vs.

1 2 3

Vs.

Page 14: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Inline Sends and Logical Ports

Vs.

Logical Port Orchestration

Inline Sends Orchestration

Page 15: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

TestConcurrent Test Client Users

Messages Per Second

Avg Response (sec)

% < 3 seconds

Messages Per Day

Test Length

Logical Ports

BizTalk 2009

100 initial increasing by 100 every 4 minutes

64.9 6.51 18.43 ~1,869,000 30 minutes

Inline Sends

BizTalk 2009

100 initial increasing by 100 every 4 minutes

148.1561111 0.23 99.98 ~4,262,000 30 minutes

Logical Ports and Inline Sends Results SummaryTest

Concurrent Test Client Users

Messages Per Second

Avg Response (sec)

% < 3 seconds

Messages Per Day

Test Length

Logical Ports

BizTalk 2009 100 60.64 1.61 97.97 ~1,746,000 10 minutes

Inline Sends

BizTalk 2009 100 236.96 0.24 99.98 ~6,824,000 10 minutes

1 2 3

5 6 7

4

8

Stair step

Constant load

Page 16: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Agenda

• Results for Customer Performance Lab

• Initial results for BizTalk 2009 Performance Lab

• Visual Studio Test Demo

• Optimization Highlights & Open Q&A

Page 17: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Visual Studio

Demo

Page 18: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Agenda

• Results for Customer Performance Lab

• Initial results for BizTalk 2009 Performance Lab

• Visual Studio Test Demo

• Optimization Highlights & Open Q&A

Page 19: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Platform Optimization Highlights• Adjusted Windows Server 2008 for best performance• Disabled SynAttackProtect (Denial of Service checking)• Placed the PAGEFILE on a separate local disk• Changed the Speed & Duplex property of each NIC from

“Auto” to 1 Gigabit Full Duplex• Stopped and disabled unused windows services on all BizTalk

Server and SQL Server nodes• Disabled the debug flag in the web.config configuration files• Increased the maxconnection settings from the default value

of 2 to 50 on BizTalk and Front-End web farm

The following settings did not improve performance on Windows Server 2008 which has a self tuning network stack:

• Modified or created several registry entries regarding TCP/IP, Network, Session Manager, LanManServer, FileSystem settings.

Page 20: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

SQL Optimization Highlights• Before baseline:

− Installed CU package 9 and installed Performance Dashboard− Pre-allocate space (size) for all data / log files− Fixed autogrowth value to a fixed amount− Granted Windows ‘Lock Pages In Memory’ and ‘Perform Volume

Maintenance Task’• Standard SQL optimizations:

− Moved Data and Log files to separate LUNs− Output all Log/Full backups to dedicated LUN− Split TempDB into multiple equal sized files

• Relieving contention on MessageBox:− R2 BizTalk stored procedures - Hotfix KB944234− Spread tables and indexes of the BizTalkMsgBoxDb across

multiple filegroups / multiple LUNs− Changed schedule of BizTalk ‘Mark Log’ backup job from 15 to 5

minutes• Scaling out:

− Created dedicated SQL Server instance for BizTalkMsgBoxDb− Moved BizTalkMsgBoxDb to a dedicated Server

Page 21: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

BizTalk Optimization Highlights• R2 64 bit BizTalk hosts take ~1 minute to

restart − Installed KB943165

• Separated hosts (including dedicated tracking host)

• BizTalk HTTP connections increased from 2 to 50• Disabled Message Delivery throttling• Disabled global tracking as in the production site.• Reduced the MaxReceiveInterval to 50 ms (default

500 ms) in the adm_ServiceClass table• Increased the Internal Message Queue Size from

the default value 100 to 1000 for all the BizTalk Hosts

• Disabled orchestration tracking events• Disabled BAM• Increased the .NET CLR worker and IO threads for

all the in-process hosts• Optimized WCF Adapter settings

Page 22: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

Why Tune BizTalk Now - More than Ever?

• Reduce costs and expenses• Win market share from expensive competitors• Optimize to do more with less!• Delight our customers.  

Page 23: BizTalk 2009 Performance Ewan Fairweather Tim Wieman Paolo Salvatori BizTalk Customer Advisory Team (CAT) Microsoft Corporation SBPCT301

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions,

it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.