SOA355 Microsoft BizTalk Server End-to-End Performance ...

SOA355 Microsoft BizTalk Server End-to-End Performance ...

Best Practices for Virtualization of Microsoft BizTalk Server 2009 with Hyper-V Ewan Fairweather & Petr Kratochvil BPD Customer Experience Team Microsoft Session Objectives Quantify BizTalk Server 2009 performance vs. BizTalk Server 2006 R2 Quantify performance of BizTalk Server 2009 on Hyper-V Provide guidance on how to effectively performance test BizTalk 2009 Microsoft Confidential Session Agenda Background Goals Use cases R2 vs. 2009 Performance Comparison Optimizing platform Optimizing application design Hyper-V Performance Conclusion Microsoft Confidential Who we are Petr Kratochvil Lead

HQ Ewan Fairweather (PM) US- West Focused on: Performance 4 Rama Ramani (PM) US Focused on: RFID, Architecture Design Tim Wieman (Senior PM) US-Central Focused on: Operational Readiness Paolo Salvatori (Principal PM) EMEA Focused on: Architecture Design Quoc Bui

( Senior PM) Asia Focused on: Architecture Design, Operational Readiness BizTalk 2009 MSDN Guidance Product Release Cycle Beta RTM CAT CAT & & UE UE Deliver ADR to TAP Customers 1 1 Performance and Hyper-V Boot Camp Enterprise Customer Engagements 2 2 3 3

4 4 Deliver MSDN Operational Guidance Deliver MSDN Hyper-V Guidance Deliver MSDN Performance Guidance All Guides are published to: MSDN, TechNet ,CHM End to end samples: Sample application BizUnit scripts LogParser scripts Visual Studio Load Tests Microsoft Confidential RTM + 90 Denotes investment Denotes delivery BizTalk Performance Story The usual story We all know testing is important for every solution Testing is neglected This is a problem

Solutions using BizTalk tend to be business critical and tolerate little downtime Poor testing increases the risk profile of your project This runs the risk of huge technical and political problems Our labs have shown that infrastructure tuning alone can double performance in some cases Microsoft Confidential Session Agenda Background Goals Use cases R2 vs. 2009 Performance Comparison Optimizing infrastructure Optimizing application design Hyper-V Performance Conclusion Microsoft Confidential BizTalk 2009 Performance Lab Goals Technical Goals: Quantify BizTalk Server 2009 (2009) vs. BizTalk Server 2006 R2 (R2) Quantify performance of physical vs. Hyper-V BizTalk Server 2009 Quantify performance of physical vs. Hyper-VSQL Server 2008 Quantify performance of consolidating BizTalk/SQL on Hyper-V Use Case 1: Logical Ports WCF Orchestration scenario Use Case 2: Inline Sends Orchestration Scenario Conditions:

Perform optimizations on 2009, R2, Hyper-V Determine delta of: 8 Throughput # of calls within 8 hours Latency Identical infrastructure for all platforms Apply infrastructure optimizations first, then application optimizations Session Agenda Background Goals Use cases R2 vs. 2009 Performance Comparison Optimizing infrastructure Optimizing application design Hyper-V Performance Conclusion Microsoft Confidential Inline Sends and Logical Ports Logical Port Orchestration Vs.

Inline Sends Orchestration 10 Calculator Request XmlDocumentOrchestration 1 1 + 2 282 18 - 3 330 12 * 25 8 \ 100 25

+ 100 32 4 4 11 Calculator Response Ok 100 1 1 None 18 None 200 None 4 None

132 None 12 Demo Code Walk-Through Inline Sends and Logical Ports examples 13 Session Agenda Background Goals Use cases R2 vs. 2009 Performance Comparison Optimizing platform Optimizing application design Hyper-V Performance Conclusion Microsoft Confidential Lab Hardware Kit - Overview 8 8 1

1 9 9 3 3 5 5 7 7 2 2 4 4 6 6 Detailed SAN Configuration 3 3 2 2 1 1 R2 vs. 2009 Performance

Comparison Vs. Name TAP2X-L04 Model DL380 G5 CPU Type Intel Xeon # of CPUs 2 x 2.33 Ghz # of Cores/CPU 4 Architecture x64 RAM 8 GB Min Local Disks OS 3 x 72gb 10k SAS Win2k8 EE 64bit Software BizTalk 2009 TAP2X-L03

DL380 G5 Intel Xeon 2 x 2.33 Ghz 4 x64 8 GB BizTalk 2009 TAP2X-L02 DL380 G5 Intel Xeon 2 x 2.33 Ghz 4 x64 8 GB TAP2X-L01 DL380 G5 Intel Xeon

2 x 2.33 Ghz 4 x64 8 GB TAP4x-M01 BL680 Intel Xeon 4 Proc (2.4 Ghz) 4 x64 32GB TAP4x-O01 BL680 Intel Xeon 4 Proc (2.4 Ghz ) 4

x64 32GB 3 x 72gb 10k SAS Win2k8 EE 64bit R2 SP2 3 x 72gb 10k SAS Win2k3 EE 64bit R2 SP2 3 x 72gb 10k SAS Win2k3 EE 64bit R2 SP2 3 x 72gb 10k SAS Win2k3 EE 64bit 3 x 72gb 10k SAS Win2k8 EE 64bit 1 1 BizTalk 2006 R2 BizTalk 2006 R2 2 2 SQL Server 2005 SQL Server 2008 3 3 Platform Optimizations They are grouped into the following categories:

Platform Optimizations SQL Server Optimizations: General (all SQL Servers) SQL Server Optimizations: BizTalk Databases BizTalk Optimizations If appropriate: SQL Server Optimizations: Custom Databases 18 With 64 bit defaults - Results are not always what they seem Concurrent Test Test Client Users Test Case 1 Baseline R2 32 Bit 100 Orch Messages Per Second Avg Response (s) %<3 seconds 45.4 2.24

94.36 2009 - 64 bit 100 Orch Test Case 1 Optimized 1 34.3 1 2 2.89 2 375.45 3 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 5 5 6 6 7 7 Messages Per Day Test Length ~1,309,000 10 minutes

4 ~987,000 4 8 8 10 minutes Baseline Comparison ~27% throughput improvement R2 ~77% throughput improvement 2009 *Excessive dehydration was occurring, dehydration settings were non-optimal for 64 bit host ~25% latency improvement R2 ~45% latency improvement 2009 Microsoft Confidential Troubleshooting Dehydration 1 1 2 2 Counters to use: Process\Virtual Bytes Process\Private Bytes 20 VirtualMemoryThrottlingCriteria PrivateMemoryThrottlingCriteria

Setting Original (MB) Optimization Applied (MB) Virtual Memory 900 6000 Private Memory 50 700 Determining Dehydration Values Using Perfmon 1 1 Virtual Bytes ~ 5.4 GB Private Bytes increases under load max 2 2 ~600MB 21 Optimizing Dehydration Default

Optimized

IsActive="false" /> Setting 22 VirtualMemoryThrottlingCriteria Counter To Use Process\Virtual Bytes PrivateMemoryThrottlingCriteria Process\Private Bytes Optimizing 64 Bit Dehydration Settings Concurrent Messages Per Test Client Second Users 32 Bit Orchestration Host Default Config File Test R2 100 55.82 2009

100 1 56.25 1 Avg Response (seconds) %<3 seconds Messages Per Day Test Length 95.57 ~1,607,000 10 minutes 2 1.74 95.31 ~1,620,000 10 minutes 1.75

2 64 Bit Orchestration Host Default Config File R2 100 45.63 2.15 95.85 ~1,314,000 10 minutes 2009 100 45.49 3 3 2.16 4 4 88.95 ~1,310,000 10 minutes 64 Bit Orchestration Host Optimized Config File R2

100 58.06 1.69 97.5 ~1,672,000 10 minutes 2009 100 60.64 1.61 97.97 ~1,746,000 10 minutes 5 5 6 6 7 7

Tuning dehydration settings on 64 bit host: Improved throughput by 27% (R2) & 33% (2009) Microsoft Confidential Session Agenda Background Goals Use cases R2 vs. 2009 Performance Comparison Optimizing platform Optimizing application design Hyper-V Performance Conclusion Microsoft Confidential Inline Sends Performance Improvement Constant Concurrent Load Test Test Client Users Logical Ports Constant Load 2009 100 Inline Sends Constant Load 2009

100 Messages Per Second Avg Response (sec) %<3 seconds 60.64 1.61 1 236.96 1 Messages Per Day Test Length 97.97 ~1,746,000 10 minutes

2 2 0.24 3 3 99.98 4 4 ~6,824,000 10 minutes Messages Per Second Avg Response (sec) %<3 seconds Messages Per Day Test Length 64.9 6.51

18.43 ~1,869,000 30 minutes 148.15 0.23 99.98 ~4,262,000 30 minutes Stair Step Load Concurrent Test Test Client Users Logical Ports Stair Step Load 2009 100-800 Inline Sends Stair Step Load 2009 100-800 Low Latency 4x throughput improvement in this scenario under constant load

Useful for scatter-gather pattern Session Agenda Background Goals Use cases R2 vs. 2009 Performance Comparison Optimizing platform Optimizing application design Hyper-V Performance Conclusion Microsoft Confidential announcing The BizTalk 2009 Hyper-V Guide MSDN http://msdn.microsoft.com/en-us/library/dd722825.aspx 27 Hyper-V Architecture 1 3 Root Partition Child Partition Child Partition Server

Server 2 VSPs VSPs I/O Stack I/O Stack 4 Drivers VMBus 5 I/O Stack VSCs Shared Memory OS Kernel Enlightenments (WS08+) VSCs VMBus Hypervisor

Devices Processors VHD - single file sits on root NTFS volume Fixed, Dynamic, Differencing Pass-through exclusive disk access to guest 28 VMBus Memory Virtual Processor Allocation 1 to 1 Mapping 1 Overload Scenario BizTalk Server BizTalk Server Virtual Virtual Processors Processors Virtual Virtual Processors Processors 0

0 0 0 BizTalk Server BizTalk Server Virtual Virtual Processors Processors Virtual Virtual Processors Processors 0 0 0 0 1 1 1 1 BizTalk Server BizTalk Server

BizTalk Server BizTalk Server Virtual Virtual Processors Processors Virtual Virtual Processors Processors Virtual Virtual Processors Processors Virtual Virtual Processors Processors 0 0 0 0 0 0 1 1 2

2 Logical Processors 29 2 0 0 3 3 0 0 1 1 0 0 1 1 2 2 Logical Processors 1 1

3 3 Physical BizTalk 2009 vs. Hyper-V BizTalk 2009 2 1 Vs. 3 Physical and Hyper-V BizTalk Servers part of the same Group Name TAP2XL06 TAP2XL05 TAP2X-L0 4 TAP2X-L0 3 TAP4XO01 Model DL380 G5 CPU Type Intel Xeon # of CPUs 2 x 2.33 Ghz # of Cores/CPU 4

Architecture x64 RAM 8 GB DL380 G5 Intel Xeon 2 x 2.33 Ghz 4 x64 8 GB DL380 G5 Intel Xeon 2 x 2.33 Ghz 4 x64 8 GB DL380 G5

Intel Xeon 2 x 2.33 Ghz 4 x64 8 GB BL680 Intel Xeon 4 Proc (Ghz TBC) 4 x64 32GB Min Local Disks 3 x 72gb 10k SAS 3 x 72gb 10k SAS 3 x 72gb 10k SAS 3 x 72gb 10k SAS 3 x 72gb 10k SAS

OS Software BizTalk 2009 Win2k8 EE 64bit Hyper-V Images BizTalk 2009 Win2k8 EE 64bit Hyper-V Images Win2k8 EE 64bit BizTalk 2009 Win2k8 EE 64bit BizTalk 2009 Win2k8 EE 64bit SQL Server 2008 Hyper-V Results BizTalk Tier Concurrent Messages Per Test Test Client Second Users Logical Ports on Optimized Platform Avg Response (s) %<3 seconds 2009 100

1.61 97.97 2009 Hyper-V 100 60.64 1 1 52.96 2 2 1.86 3 3 Messages Per 8-hour Day Test Length ~1,746,000 10 minutes 4

4~1,520,000 10 minutes 99.98 ~6,824,000 10 minutes 99.87 8 8 ~6,438,000 10 minutes 94.8 Inline Sends on Optimized Platform 2009 100 2009 Hyper-V 100 0.24 236.96 5

5 223.54 6 6 0.28 7 7 Hyper-V delivers ~87% throughput* Hyper V delivers ~85% latency* *Note: Calculated from Logical Ports Test Hyper-V Summary BizTalk Tier Key BizTalk Performance Indicators 34.3 32.36 35 1 1 30 27.38 2 2

25 3 3 20.85 20 4 4 15 10 5 2.16 2.29 2.71 0 3.57 Baseline / BizTalk and SQL on separate Physical Hardware BizTalk on Hyper-V / SQL on Physical Hardware BizTalk and SQL on Hyper-V / Separate Hyper-V Host Computers BizTalk and SQL on Hyper-V / Consolidated Hyper-V Host Computer Latency / Request-Response Latency (sec) Throughput / Documents processed per second Hyper-V Summary SQL Tier Key SQL Performance Indicators

90.1 88 100 88.7 89.5 63.47 61.65 90 80 52.88 70 41.39 60 50 40 30 20 10 1 1 2 1 Totals Avg Disk Read (ms)

0 Baseline / BizTalk and SQL on separate Physical Hardware Total Drives Disk Write (ms) BizTalk on Hyper-V / SQL on Physical Hardware BizTalk and SQL on Hyper-V / Separate Hyper-V Host Computers SQL Server:SQL Statistics BizTalk and SQL on Hyper-V / Consolidated Hyper-V Host ComputerBatch Requests/sec /100 SQL Processor Utilization % Processor Lessons Learned To measure Guest processors: \Hyper-V Hypervisor Virtual Processor(*)\% Guest Run Time \Hyper-V Hypervisor Virtual Processor(*)\% Total Run Time To measure Physical processors: \Hyper-V Hypervisor Logical Processor(*)\% Total Run Time To measure Host processors: \Hyper-V Hypervisor Root Virtual Processor(*)\% Total Run Time 34 Disk Lessons Learned For VHDs use: \Logical Disk(*)\Avg. sec/Read \Logical Disk(*)\Avg. sec/Write \Logical Disk(*)\Avg. sec/Read \Logical Disk(*)\Avg. sec/Write For PassThrough Disk Analysis use:

Hyper-V Virtual Storage Device counters xPerf Tool http://perftools 35 Pass-Through Disk Perf Measurement Physical SQL Physical Disk Transfers/Sec 269.73 Virtual SQL Pass-through Disk 250.47 Difference 7%* Transfers (reads/writes) per second Virtual SQL Pass-Through Disk Transfers (reads/writes) per second Physical SQL Physical Disk 0 50 100150200250300 * Other factors such as SAN performance could have been a factor

36 Disk Lessons Learned Use PassThrough disks for high disk I/O: BizTalk MessageBox Database BizTalk Tracking Database BizTalk File Adapter %temp directory if BizTalk is streaming large files 37 Key Takeaways Quantify BizTalk Server 2009 performance vs. BizTalk Server 2006 R2 3-5% improvement in 2009 W2K3 Networking optimizations did not improve performance on W2K8 in our lab Quantify performance of BizTalk Server 2009 on Hyper-V Approx 13% Hyper-V overhead for BizTalk tier. This is comparable to other products. SQL becomes CPU bound due to 4 VP limit Provide guidance on how to effectively performance test BizTalk 2009 Visual Studio Testing Tools are a great driver for testing process Sample code to be provided: LoadTest Plug-In for BizUnit Test application VS Load Test Project 38

MSDN http:// msdn.microsoft.com/en-us/library/dd722825. aspx TechNet 39 http:// technet.microsoft.com/en-us/library/dd72282 Helpful Tools BizTalk BPA PerfMon LoadGen BizUnit Log Man Relog Log Parser PAL SQLIO BizTalk Orchestration Profiler Microsoft Confidential SQL Hyper-V Session DAT 318 Microsoft SQL Server 2008 Virtualization Considerations and Best Practices Room: 152 Time: 9AM 10:15AM Microsoft Confidential Q&A

42 Resources BizTalk Server 2006: Managing a Successful Performance Lab http://msdn2.microsoft.com/en-us/library/aa972201.aspx Scaling Your Solutions http://msdn2.microsoft.com/en-us/library/aa561567.aspx Configuration Parameters that Affect Adapter Performance http://msdn2.microsoft.com/en-us/library/aa561380.aspx Persistence and the Orchestration Engine http://msdn2.microsoft.com/en-us/library/aa547090.aspx Troubleshooting MessageBox Latency Issues http://msdn2.microsoft.com/en-us/library/aa561709.aspx Performance Tips and Tricks http://msdn2.microsoft.com/en-us/library/aa560694.aspx Rule Engine Configuration and Tuning Parameters http://technet.microsoft.com/en-us/library/aa548008.aspx Performance Considerations When Using the Rule Engine http://msdn2.microsoft.com/en-us/library/aa952929.aspx Microsoft Confidential Filegroup Resources BizTalk Server Database Optimization http://technet.microsoft.com/en-us/library/bb743398.aspx

Understanding Files and Filegroups http://msdn2.microsoft.com/en-us/library/ms189563.aspx How to: Add Data or Log Files to a Database (SQL Server Management Studio) http://msdn2.microsoft.com/en-us/library/ms189253.aspx How to: Move an Existing Index to a Different Filegroup (SQL Server Management Studio) http://msdn2.microsoft.com/en-us/library/ms175905.aspx Physical Database Files and Filegroups http://msdn2.microsoft.com/en-us/library/ms179316.aspx Working with tempdb in SQL Server 2005 http://www.microsoft.com/technet/prodtechnol/sql/2005/workingwithtempdb. mspx Optimizing Server Performance Using I/O Configuration Options http://msdn2.microsoft.com/en-us/library/ms189892.aspx Microsoft Confidential Resources www.microsoft.com/teched www.microsoft.com/learning Sessions On-Demand & Community Microsoft Certification & Training Resources http://microsoft.com/technet

http://microsoft.com/msdn Resources for IT Professionals Resources for Developers www.microsoft.com/learning Microsoft Certification and Training Resources 45 Complete an evaluation on CommNet and enter to win! 46 2008 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. Microsoft Confidential Ongoing Orchestration Performance Testing Message processing performance XMLDocument XMLReader/XMLWriter and Virtual Stream Custom Message Class Test Messages 5 operations, 2 KB

500 operations, 125 KB 5000 operations 1243 KB Ongoing Pipeline Performance Testing Pipeline processing performance XMLDocument XMLReader XPathReader Test Messages 5 operations, 2 KB 500 operations, 125 KB 5000 operations 1243 KB Appendix Memory Lessons Learned VMs require non-paged memory (physical memory) Ensure you have enough physical memory on both the host and guest computers Use Traditional Counters: \Memory\Available Mbytes \Memory\Available Mbytes \Memory\Pages/sec \Memory\Pages/sec 50 Appendix Network Lessons Learned For high network I/O: Use a 1:1 mapping of physical to virtual network adapters

For measuring network adapters use: \Network Interface Bytes Total Per Second Output Queue Length \Hyper-V Virtual Network Adapter Bytes Per Second \Hyper-V Virtual Switch 51 BizTalk Comparison Tier 2 1 Vs. 3 4 SQL Comparison Tier 5

Recently Viewed Presentations

  • Computer Security CS 426 Lecture 2 Cryptography: Terminology

    Computer Security CS 426 Lecture 2 Cryptography: Terminology

    CS426 Fall 2010/Lecture 2 * Frequency of Letters in English CS426 Fall 2010/Lecture 2 * Security Principles Security by obscurity doesn't work Should assume that the adversary knows the algorithm; the only secret the adversary is assumed to not know...
  • Final Report: Analysis of Room Turnover Processes for EP and ...

    Final Report: Analysis of Room Turnover Processes for EP and ...

    Coordinators provided historical MiChart data. Cath and EP lab operations Jan-Aug 2016. Analyzed data using R programming language. Primary metrics: Turnover start time. Turnover time. Room ready minus room start. Historical Data Analysis . Method
  • Morphology

    Morphology

    Morphemes Meaningful units "I have two cats" "She wants to leave soon" "He walked across the room" "Her behavior was unbelievable" Morphemes Free Can stand alone {eye, think, run, apple} Bound Can not stand alone Has to be attached to...
  • Tennessee (SMP) Senior Medicare Patrol MSN Redesign The

    Tennessee (SMP) Senior Medicare Patrol MSN Redesign The

    A one-page summary of the beneficiary's Medicare status and of the claims' data on the notice. SECTION 2: MAKING THE MOST OF YOUR MEDICARE (PAGE 2) One page with tips for beneficiaries on how to use their MSN, get help...
  • Triangles &amp; Their Angles

    Triangles & Their Angles

    The measure of an exterior angle of a triangle is equal to the sum of the measures of the two non-adjacent interior angles. 98˚ 26˚ The exterior angle adds up to the measure of 98 + 26. It is 124˚....
  • Environmental Intelligence for A Secure and Sustainable Planet

    Environmental Intelligence for A Secure and Sustainable Planet

    USM HFR. USF HFR. TS Bonnie. Web Portal. US IOOS Response to DWH. HFR data informed NOAA . trajectory forecasts. Briefing Blog. HFR validation of SABGOM Forecast with satellite detected oil slicks. Response to DWH showed that the IOOS business...
  • Comparing Economies: Israel, Iran, Turkey, & Saudi Arabia

    Comparing Economies: Israel, Iran, Turkey, & Saudi Arabia

    mixed economy, the Saudi king and his advisors still make quite a lot of the country's economic decisions, especially those related to oil. Saudi Arabia's economy depends predominantly on oil, its main export. Oil funds the country's education, defense, transportation,...
  • Unit D - Science 10

    Unit D - Science 10

    Albedo. The albedo of a surface is the percent of solar radiation that it reflects. a white shiny surface (e.g. snow) has a high albedo. a dark, dull surface (e.g. forest, dirt) has a low albedo. The average albedo for...