Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization...
Transcript of Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization...
![Page 1: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/1.jpg)
![Page 2: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/2.jpg)
Quoc BuiSenior Program ManagerMicrosoft, Customer Advisory Team (CAT)Session Code: DEV 319
![Page 3: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/3.jpg)
Session Objectives
Session Objective(s): Understand architectural, design, and development patterns to improve BizTalk Server performance
Provide information on the tools, techniques and processes used by the Rangers to run effective BizTalk performance labs.
Answer BizTalk performance related questions.
Microsoft Confidential
![Page 4: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/4.jpg)
Agenda
Microsoft Confidential
BizTalk Rangers Performance LabResults for BizTalk Server 2009 Scale Out Lab
Coding PatternsDEV313 (15:15) Today
Optimization Highlights & Drill Down
![Page 5: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/5.jpg)
Agenda
Microsoft Confidential
BizTalk Rangers Performance LabResults for BizTalk Server 2009 Scale Out Lab
Coding PatternsDEV313 (15:15) Today
Optimization Highlights & Drill Down
![Page 6: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/6.jpg)
Methodology
Performance limitations should be viewed as a series of obstacles: removing one bottleneck usually is not enough to boost your performance, you have to remove all of them.
Make an inventory of your system configuration before applying any change to the platform.
Use a bottom-up approach when tuning your platform.
After every modification you should retest your application since a change in one part of your solution could lead to problems or bottlenecks in another component/subsystem.
![Page 7: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/7.jpg)
Performance Scale Out Goals Provide sizing and scaling guidance for all BizTalk:
Quantify scale out capabilities of BizTalk 1,2,4 servers
Quantify scale out capabilities of MsgBox 1,3 scenarios
Document this scenario in the BizTalk 2009 Performance Guide
Provide marketing with compete collateral
Understand how fast BizTalk can go on current hardware
![Page 8: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/8.jpg)
Scenario Summaries
Messaging
Orchestration
Scale out BizTalk (1-4)
Scale out MessageBox (1,3)
![Page 9: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/9.jpg)
Scenario 1:Messaging Message Flow
1. Loadgen generates a new XML message and sends it over NetTCP
2. A WCF-NetTCP Receive Location receives a the xml document from Loadgen.
3. The PassThruReceive pipeline performs no processing and the message is published by the EPM to the MessageBox.
4. The WCF One-Way Send Port, which is the only subscriber to the message, retrieves the message from the MessageBox
5. The PassThruTransmit pipeline provides no additional processing
6. The message is delivered to the back end WCF service by the WCF NetTCP adapter
![Page 10: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/10.jpg)
Scenario 2:Orchestration Message Flow
1. Loadgen generates a new XML message and sends it over NetTCP
2. A WCF-NetTCP Receive Location receives a the xml document from Loadgen.
3. The XMLReceive pipeline performs no processing and the message is published by the EPM to the MessageBox.
4. The message is delivered to a simple Orchestration which consists of a receive location and a send port
5. The WCF One-Way Send Port, which is the only subscriber to the Orchestration message, retrieves the message from the MessageBox
6. The PassThruTransmit pipeline provides no additional processing
7. The message is delivered to the back end WCF service by the WCF NetTCP adapter
XMLReceive
Receive Port
WCF One-Way Receive Location
BizTalkMsgBoxDb
Messages
PassThruTransmit
WCF One-Way Send Port
Load Generating
Application Back End WCF Service
BizTalk Server 2009
XML
Message
(2 KB) WCF
Adapter
XML
Message
(2 KB)WCF
Adapter
BizTalk In Process 64 Bit Host: RxHost BizTalk In Process 64 Bit Host: TxHost
Orchestration
BizTalk In Process 64 Bit Host: PxHost
1 2 3 5 6 7
4
![Page 11: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/11.jpg)
0200400600800
1000120014001600180020002200
BizTalk: 1BTS(1 RxHost, 1TxHost) SQL:
1 SQL
BizTalk: 2BTS(1 RxHost, 1TxHost) SQL:
3 SQL
BizTalk: 3BTS(1 RxHost, 1TxHost) SQL:
3 SQL
BizTalk: 4BTS(1 RxHost, 1TxHost) SQL:
3 SQL
90.9 73.8 66.9 46.3
1088.3
1459.2
2102.6 2069.6
BizTalk Key Performance Indicators
AvgProcessor
Utilization(across allBTS boxes)
Throughput/ Documents
processedper second
Results Scenario 1: Messaging Single and Multi Message Box
WCF-NetTcp Recv + WCF-Nettcp Send Doc Processed/Sec BTS CPU AVG SQL CPU AVG
BizTalk: 1BTS (1 RxHost, 1 TxHost) SQL: 1 SQL
1088.390.9 39.5
BizTalk: 2 BTS SQL: 3 SQL
1459.273.8 24.9
BizTalk: 3 BTSSQL: 3 SQL
2102.666.9 36.5
BizTalk: 4BTSSQL: 3SQL
2069.646.3 36.4
0.0
500.0
1000.0
1500.0
2000.0
2500.0
BizTalk:1BTS (1
RxHost, 1TxHost) SQL:
1 SQL
BizTalk:2BTS (1
RxHost, 1TxHost) SQL:
3 SQL
BizTalk:3BTS (1
RxHost, 1TxHost) SQL:
3 SQL
BizTalk:4BTS (1
RxHost, 1TxHost) SQL:
3 SQL
39.5 24.9 36.5 36.4
1088.3
1459.2
2102.6 2069.6
SQL Key Performance Indicators
SQL ProcessorUtilization %
Throughput /Documents
processed persecond
![Page 12: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/12.jpg)
WCF-NetTcp Recv + Orch + WCF-Nettcp SendDoc Processed/Sec
BTS CPU AVG SQL CPU AVG
BizTalk: 1BTS (1 RxHost, 1 PxHosts, 1 TxHost)SQL: 1SQL
433.25 91.2 37.8
BizTalk: 2 BTS (1 RxHost, 1 PxHosts, 1 TxHost) SQL: 1SQL
675.88 74.6 60.3
BizTalk: 3 BTS (1 RxHost, 1 PxHosts, 1 TxHost) SQL: 1 SQL 645.31 28.8 49.3
BizTalk: 4 BTS (1 RxHost, 2 PxHosts, 1 TxHost) SQL: 1 SQL
561.63 22.8 60.2
Results Scenario 2: Orchestration Single Message Box
0.0
100.0
200.0
300.0
400.0
500.0
600.0
700.0
BizTalk:1BTS (1
RxHost, 1TxHost) SQL:
1 SQL
BizTalk:2BTS (1
RxHost, 1TxHost) SQL:
1 SQL
BizTalk:3BTS (1
RxHost, 1TxHost) SQL:
1 SQL
BizTalk:4BTS (1
RxHost, 1TxHost) SQL:
1 SQL
37.8 60.3 49.3 60.2
433.3
675.9645.3
561.6
SQL Key Performance Indicators
SQL ProcessorUtilization %
Throughput /Documents
processed persecond
0
100
200
300
400
500
600
700
BizTalk: 1BTS(1 RxHost, 1TxHost) SQL:
1 SQL
BizTalk: 2BTS(1 RxHost, 1TxHost) SQL:
1 SQL
BizTalk: 3BTS(1 RxHost, 1TxHost) SQL:
1 SQL
BizTalk: 4BTS(1 RxHost, 1TxHost) SQL:
1 SQL
91.2 74.628.8 22.8
433.3
675.9645.3
561.6
BizTalk Key Performance Indicators
AvgProcessor
Utilization(across allBTS boxes)
Throughput/ Documents
processedper second
![Page 13: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/13.jpg)
Results Scenario 2: Orchestration Three Message BoxWCF-NetTcp Recv + Orch + WCF-Nettcp Send Doc Processed/Sec BTS CPU AVG SQL CPU AVG
BizTalk: 2 BTS (1 RxHost, 1 PxHosts, 1 TxHost) SQL: 3 SQL
581.5 78.3 27.3
BizTalk: 3 BTS (1 RxHost, 1 PxHosts, 1 TxHost) SQL: 3 SQL
829.81 52.8 44.0
BizTalk: 4 BTS (1 RxHost, 2 PxHosts, 1 TxHost) SQL: 3 SQL
1005.13 66.3 52.6
0
200
400
600
800
1000
BizTalk: 2BTS (1RxHost, 1
TxHost) SQL: 3SQL
BizTalk: 3BTS (1RxHost, 1
TxHost) SQL: 3SQL
BizTalk: 4BTS (1RxHost, 1
TxHost) SQL: 3SQL
78.3 52.8 66.3
581.5
829.81005.1
BizTalk Key Performance Indicators
AvgProcessor
Utilization(across allBTS boxes)
0.0
200.0
400.0
600.0
800.0
1000.0
BizTalk: 2BTS (1RxHost, 1
TxHost) SQL: 3SQL
BizTalk: 3BTS (1RxHost, 1
TxHost) SQL: 3SQL
BizTalk: 4BTS (1RxHost, 1
TxHost) SQL: 3SQL
27.3 44.0 52.6
581.5
829.81005.1
SQL Key Performance Indicators
SQL ProcessorUtilization %
Throughput /Documents
processed persecond
![Page 14: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/14.jpg)
Lab Hardware Kit - Overview
![Page 15: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/15.jpg)
Detailed SAN Configuration
![Page 16: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/16.jpg)
SAN LUN Configuration
CAT Team LUN configuration
Distribute MessageBox artifacts using automated script (shipped in BTS09 Perf Guide)
Server Name Drive Letter Volume Name Files Lun Size (GB) Cluster Size
Tap4x-O01/Tap4x-
O05/Tap4x-M01
F Data_Sys MASTER, and MSDB
data files
10 64Kb
G Logs_Sys MASTER, and MSDB
transaction log files
10 64KB
H Data_TempDb TempDB Data 50 64Kb
I Logs_TempDb TempDB Log 50 64KB
J Data_BtsMsgBox BizTalkMsgBoxDb data file
100 64Kb
K Logs_BtsMsgBox BiztalkMsgBoxDB log file
100 64KB
L Data_Spare MessageBox Files 10 64Kb
M Data_BizTalkDataBases Other BizTalk Database Files
20 64Kb
N Logs_BizTalkDatabases Other BizTalk Database Log Files
20 64KB
P Misc Misc 20 64KB
![Page 17: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/17.jpg)
Optimizing LUNs for Capacity versus Performance
Capacity OptimizedOptimized for disk capacity
Pro: Efficient use of capacity
Con: LUN’s compete for I/O
Typical SAN configuration
Performance OptimizedOptimized for performance
Pro: Dedicated I/O of spindles to the LUN
Con: Less efficient with capacity
LUN1 LUN2 LUN3 LUN4I/O’s per second 200 200 200 I/O’s per second 600Capacity in GB’s 500 500 500 Capacity in GB’s 1500
Example: Example:
![Page 18: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/18.jpg)
Agenda
Microsoft Confidential
BizTalk Rangers Performance LabResults for BizTalk Server 2009 Scale Out Lab
Coding PatternsDEV313 (15:15) Today
Optimization Highlights & Drill Down
![Page 19: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/19.jpg)
Architectural Design Decisions
Architecturally elegantLoosely coupled
Itinerary processing
Performance-orientedLow-latency
High throughput
Trade-offs to meet both requirements
![Page 20: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/20.jpg)
PatternsWhat is this workflow trying to do?
What’s wrong with it?
Child Orchestration gets called
Message gets submitted to LOB
Loopwhile Finish=false
Message is received from LOB
Finish=true
Finish=false
![Page 21: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/21.jpg)
Sequential Ordered Message Delivery
Sequential Ordered Message Delivery
(Improving Ordered Message Delivery in BizTalk Server During Concurrent Processing)
http://msdn.microsoft.com/en-us/library/bb851740.aspx
![Page 22: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/22.jpg)
Architecturally Elegant
![Page 23: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/23.jpg)
Performance-oriented
Tightly-coupledOrchestrations call each other using Call shape
Inline sends
![Page 24: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/24.jpg)
Debatching inbound in Pipelines
Allows parallel processing of individual messages
Prevents looping in orchestrations, which can be problematic
Can reduce memory consumption
![Page 25: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/25.jpg)
Pipeline components
Stream-based approach to pipeline componentsProcessing in the stream implementation instead of the Execute method
Take advantage of BizTalk’s pipeline componentsVirtualStream and readOnlySeekableStream
Also in source-code in the BizTalk SDK
XPathMutatorStream
NamespaceTranslatorStream and XmlTranslatorStream
![Page 26: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/26.jpg)
VirtualStream with ReadOnlySeekableStream
int bufferSize = 0x280;
int thresholdSize = 0x100000;
Stream vStream = new VirtualStream(bufferSize, thresholdSize);
Stream seekStream = new ReadOnlySeekableStream(inboundStream, vStream, bufferSize);
![Page 27: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/27.jpg)
Orchestrations
Avoid loading messages in XmlDocument
Use XLANGMessagepublic void ProcessMessage(XLANGMessage message)
{
try
{
using (XmlReader reader = message[0].RetrieveAs(typeof(XmlReader)) as XmlReader)
if (reader != null)
{
...
}
}
finally
{
message.Dispose();
}
}
![Page 28: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/28.jpg)
BizTalk Design Patterns
Enterprise Service Bus
Integrating the Health Enterprise
Parallel Convoy
Low Latency
Message sequence delivery
Async Aggregation
Inverse Direct Bound Port
First In First Out
Splitter
Interrupter Pattern
Terminate
Retry Pattern
Filter
Sequential Convoy Aggregator
Most of these are available on codeplex.com!
![Page 29: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/29.jpg)
Agenda
Microsoft Confidential
BizTalk Rangers Performance LabResults for BizTalk Server 2009 Scale Out Lab
Coding PatternsDEV313 (15:15) Today
Optimization Highlights & Drill Down
![Page 30: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/30.jpg)
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
Platform Optimization Highlights
![Page 31: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/31.jpg)
Stopped and disabled unused windows services on all BizTalk Server and SQL Server nodes
Disabled the debug flag in the web.configconfiguration files
Increased the maxconnection settings from the default value of 2 to 50 on BizTalk and Front-End web farm
Some 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.
Platform Optimization Highlights
![Page 32: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/32.jpg)
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
SQL Optimization Highlights
![Page 33: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/33.jpg)
Relieving contention on MessageBox:
R2 BizTalk stored procedures - Hotfix KB944234
Spread tables and indexes of the BizTalkMsgBoxDbacross 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
SQL Optimization Highlights
![Page 34: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/34.jpg)
R2 64 bit BizTalk hosts take ~1 minute to restart Installed KB943165
Separated hosts (including dedicated tracking host)
Disabled Message Delivery throttling
Disabled global tracking as in the production site.
BizTalk Optimization Highlights
![Page 35: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/35.jpg)
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
BizTalk Optimization Highlights
![Page 36: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/36.jpg)
Increased the .NET CLR worker and IO threads for all the in-process hosts
The Microsoft Distributed Transaction Coordinator (MS DTC) log file can become a disk I/O bottleneck in heavy-transaction environments.
This is especially true when using transactional adapters (SQL, MSMQ, MQSeries) or in a multi-MessageBox environment.
BizTalk HTTP connections increased from 2 to 50
Minimize Persistence pointsOrchestration instance serialization includes all messages and variables instantiated in the orchestration.
Code Optimization Highlights
![Page 37: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/37.jpg)
Avoid using XMLDocument object model
Serialize XSD into .NET classesXSD tool (.NET Framework 2.0)
SVCUTIL (.NET Framework 3.0)
Avoid using orchestration based long running transactions for due dates
Use SQL Server Service Broker, Query Activation Services
http://msdn.microsoft.com/en-us/library/t9x04ed2.aspx
Code Optimization Highlights
![Page 38: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/38.jpg)
WCF-* AdaptersWhenever possible, use one of the following WCF-* Adapters.
WCF-NetTcp Adapter
WCF-Custom Adapter + CustomBinding with the binaryMessageEncoder and tcpTransport Binding Elements
Add the serviceThrottling service behavior to a WCF-* Receive Location and use the following settings for a
Parameter Default Suggested
tcpTransport->ConnectionPoolSettings->maxOutboundConnections 10 try changing to 20
tcpTransport->maxPendingAccepts 1 try changing to 20
tcpTransport->maxPendingConnections 10 try changing to 20
tcpTransport->listenBacklog 10 try changing to 20
Parameter Default Suggested
tcpTransport->maxPendingAccepts 1 try changing to 20
tcpTransport->maxPendingConnections 10 try changing to 200
tcpTransport->listenBacklog 10 try changing to 20
Send Side (BizTalk Send Port):
Receive Side (BizTalk Receive Location):
Parameter Default Suggested
serviceThrottling->maxConcurrentCalls 16 try changing to 200
serviceThrottling->MaxConcurrentSessions 10 try changing to 20
![Page 39: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/39.jpg)
MSDN guides
BizTalk Server Performance Optimization Guidehttp://msdn.microsoft.com/en-us/library/ee377064(BTS.10).aspx
BizTalk Server Operations Guidehttp://msdn.microsoft.com/en-us/library/ee308947(BTS.10).aspx
BizTalk Server Database Optimizationhttp://msdn.microsoft.com/en-us/library/bb743398.aspx
![Page 40: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/40.jpg)
//www.microsoft.com/biztalk/evaluation
//www.microsoft.com/technet/prodtechnol/biztalk
//microsoft.com/technet/community/newsgroups
//gotdotnet.com/team/wsservers
//msdn.microsoft.com/virtuallabs/biztalk and//www.microsoft.com/biztalk/techinfo/virtual-labs.mspx
//msdn.microsoft.com/biztalkDeveloper Center
Virtual Labs
Community
Newsgroups
Tech Center
Product Information
BizTalk Server Resources
//www.microsoft.com/biztalkProduct Website
![Page 41: Quoc Buidownload.microsoft.com/documents/hk/technet/techdays2009/... · 2018-12-05 · Optimization Highlights & Drill Down. Agenda Microsoft Confidential ... BizTalk In Process 64](https://reader034.fdocuments.in/reader034/viewer/2022042921/5f69357ed8e78e176b7d14c1/html5/thumbnails/41.jpg)
© 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.