Microsoft .NET Framework 4.0 vs. IBM ®WebSphere 7 StockTrader Benchmark Report ® 7/2/2010
© Microsoft Corporation 2010
.NET StockTrader Technical Documentation Page 1
This document supports the release of Windows Server® 2008 R2 and the Microsoft .NET Framework 4.0. The information contained in this document represents the current view of Microsoft Corp. on the issues disclosed as of the date of publication. Because Microsoft must respond to changing market conditions, this document should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented. This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted, the companies, organizations, products, domain names, e-mail addresses, logos, people, places and events depicted in examples herein are fictitious. No association with any real company, organization, product, domain name, e-mail address, logo, person, place or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Microsoft grants you the right to reproduce this guide, in whole or in part. Microsoft may have patents, patent applications, trademarks, copyrights or other intellectual property rights covering subject matter in this document, except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights or other intellectual property. © 2010 Microsoft Corp. All rights reserved. Microsoft, Windows Server, the Windows logo, Windows, Active Directory, Windows Vista, Visual Studio, Internet Explorer, Windows Server System, Windows NT, Windows Mobile, Windows Media, Win32, WinFX, Windows PowerShell, Hyper-V, and MSDN are trademarks of the Microsoft group of companies. The names of actual companies and products mentioned herein may be the trademarks of their respective owners.
Contents Executive Summary ....................................................................................................................................... 3
Introduction .................................................................................................................................................. 5
.NET StockTrader Sample Application and Performance Kit .................................................................... 5
Multiple Clients with Open Integration to Middle Tier via WCF............................................................... 6
Full Disclosure Notice ................................................................................................................................ 6
Middle-Tier Hardware Platforms Tested ...................................................................................................... 7
IBM Power 570 (based on Power6 Architecture) running IBM AIX 5.3 .................................................... 7
Hewlett-Packard C7000 Blade System with 4 HP ProLiant BL460c blades ............................................... 7
Test Methodology and Reporting Metrics .................................................................................................... 9
Web Application Benchmark .................................................................................................................... 9
Trade Middle Tier Web Service Benchmark and WSTest Web Service Benchmark ............................... 10
Running the Benchmarks and Capturing Reported Metrics ................................................................... 10
.NET Framework 4.0 vs. .NET Framework 3.5 ......................................................................................... 11
Fair Benchmark Comparisons between .NET StockTrader and IBM WebSphere 7 Trade .......................... 12
Database Access Technology/Programming Model ............................................................................... 12
Caching .................................................................................................................................................... 12
Enable Long Run Support ........................................................................................................................ 13
Database Load ......................................................................................................................................... 13
Database Configuration .......................................................................................................................... 14
Test Methodology for the Trade Web Application Benchmark .............................................................. 14
Test Scripts .......................................................................................................................................... 14
Simulated User Settings ...................................................................................................................... 15
IBM HTTP Server vs. Port 9080 ........................................................................................................... 16
Web Application Pages Exercised by the Test Scripts ......................................................................... 16
Test Methodology for the Trade Web Services Benchmark and WSTest Web Service Benchmark ....... 17
Test Scripts .......................................................................................................................................... 17
IBM HTTP Server vs. Port 9080 ........................................................................................................... 17
Benchmark Results ...................................................................................................................................... 18
Trade Web Application Test .................................................................................................................... 18
Trade Web Application Benchmark Discussion ...................................................................................... 19
IBM WebSphere 7/Power6 vs. Microsoft .NET 4.0/HP BladeSystem Benchmark Report Page 1
Trade Middle Tier Web Services Test ..................................................................................................... 21
Trade Middle Tier Web Services Benchmark Discussion ........................................................................ 22
WSTest Benchmark ................................................................................................................................. 24
WSTest Benchmark Discussion ............................................................................................................... 25
Conclusion ................................................................................................................................................... 27
Appendix A: Pricing ..................................................................................................................................... 28
Hardware and Operating System Pricing ................................................................................................ 28
IBM Power 570 .................................................................................................................................... 28
Hewlett Packard BladeSystem C7000 ................................................................................................. 31
Pricing for the Application Server Used in the Tests .............................................................................. 32
IBM WebSphere 7/IBM Power 570 ..................................................................................................... 32
IBM WebSphere 7/ Hewlett Packard BladeSystem C7000 ................................................................. 32
Total Hardware, Operating System and Application Server Costs for IBM WebSphere 7/AIX on IBM
Power 570 as tested................................................................................................................................ 33
Total Hardware, Operating System and Application Server Costs for IBM WebSphere 7/Windows
Server 2008 on Hewlett Packard BladeSystem C7000 as tested ............................................................ 33
Total Hardware, Operating System and Application Server Costs for Microsoft .NET/Windows Server
2008 on Hewlett Packard BladeSystem C7000 as tested ....................................................................... 33
Appendix B: Tuning Parameters ................................................................................................................. 34
WebSphere Tuning – IBM Power 570/AIX .............................................................................................. 34
IBM HTTP Server Tuning AIX ............................................................................................................... 34
WebSphere Tuning – Windows Server 2008 R2 ..................................................................................... 35
IBM HTTP Server Tuning Windows Server 2008 R2 ............................................................................ 36
.NET Tuning ............................................................................................................................................. 36
IBM WebSphere 7/Power6 vs. Microsoft .NET 4.0/HP BladeSystem Benchmark Report Page 2
Executive Summary
This paper presents updated benchmark results based on extensive performance and scalability testing
of Microsoft .NET Framework 4.0 using the .NET StockTrader benchmark workload as well as the WSTest
workload. The .NET 4.0 framework benchmark results are compared to the equivalent Java Enterprise
workloads running on IBM WebSphere 7, both on a 64-bit Power6/AIX server and on Windows Server
2008 R2. Both the peak throughput rate and the relative cost of each platform are compared, so that
customers can better understand both the performance and cost characteristics of the platforms tested.
All tests on Windows Server were conducted on an HP BladeSystem 7000 running Windows Server 2008
R2 release (64-bit), with the final RTM release of the .NET Framework 4.0 (64-bit) which is downloadable
for free on MSDN. The IBM WebSphere/Java tests were conducted using the latest IBM WebSphere 7.0
release, 64-bit. The entire benchmark kit, including .NET source code and Java source code for the
StockTrader and WSTest workloads is downloadable for free at http://msdn.microsoft.com/stocktrader.
This kit also includes a Capacity Planner/multi-agent benchmark tool that customers can use to perform
their own testing against .NET 4.0, IBM WebSphere and Oracle WebLogic.
Platforms Tested
IBM Power 570 with IBM WebSphere 7 and AIX 5.3
Hewlett Packard BladeSystem C7000 with IBM WebSphere 7 and Microsoft Windows Server 2008
Hewlett Packard BladeSystem C7000 with Microsoft .NET and Windows Server 2008 The table below summarizes the results of the testing, including the cost of each platform as
tested. Detailed pricing data is included in Appendix A.
IBM WebSphere 7/Power6 vs. Microsoft .NET 4.0/HP BladeSystem Benchmark Report Page 3
IBM Power 570 Hewlett Packard Hewlett Packard with WebSphere BladeSystem BladeSystem 7 and AIX 5.3 C7000 with C7000 with (8 cores) WebSphere 7 and Microsoft .NET Windows Server 4.0 and Windows 2008 R2 Server 2008 R2 Total Hardware +
Operating System
$215,728.08
$50,161.00
$50,161.00
Costs
Middle Tier
Application Server
$44,400.00
$37,000.00
$0.00
Licensing Costs
Total Middle Tier
System Cost as
$260,128.08 $87,161.00 $50,161.00 Tested
Trade Web
Application
8,016 transactions
11,121 transactions
11,020 transactions
Benchmark
per second
per second
per second
Sustained Peak TPS
Trade Middle Tier
Web Service
10,571 transactions
14,468 transactions
22,316 transactions
Benchmark
per second
per second
per second
Sustained Peak TPS
WSTest EchoList
Test Sustained
10,536 transactions
15,872 transactions
23,772 transactions
Peak TPS
per second
per second
per second
IBM WebSphere 7/Power6 vs. Microsoft .NET 4.0/HP BladeSystem Benchmark Report Page 4
Introduction
To perform the comparative analysis for these three application server platforms, the performance
of three core workloads is examined on each platform tested:
1.
Data-driven Web application. This comparison is based on a WebSphere 7 implementation
of the IBM Trade performance benchmark application compared to the .NET StockTrader
4.0 benchmark application based on the .NET Framework 4.0.
2.
Middle-tier Web Service benchmark with middle-tier business logic and database transactions. This comparison is based on a WebSphere 7 implementation of the IBM
Trade performance benchmark application compared to the .NET StockTrader 4.0
benchmark application, testing the middle tier Web Service layer using a Web-Service
based benchmark client.
3.
Web Service Benchmark based on WSTest. This benchmark uses the WSTest 1.5
benchmark workload (as originally defined by Sun Microsystems) to focus on just raw Web
Service performance, with no business logic or middle tier data access. As such, this test
focuses on just the JAX-WS performance of IBM WebSphere 7 compared to the
performance of the equivalent .NET 4.0 Windows Communication Foundation (WCF) Web
Services.
.NET StockTrader Sample Application and Performance Kit
All sources are downloadable from MSDN as part of the .NET StockTrader sample application,
available at http://msdn.microsoft.com. This download includes:
The IBM WebSphere 7-optimized Trade benchmark application and Java source code.
The IBM WebSphere 7-optimized WSTest 1.5 benchmark and Java source code based on
JAX-WS.
The .NET StockTrader 4.00 benchmark application and source code based on ASP.NET and
WCF 4.0.
The .NET implementation of the WSTest 1.5 benchmark and source code based on WCF
4.0.
The Capacity Planner multi-agent benchmark tool, including source code, which enables
customers to test the Web Service workloads (both for Trade and for WSTest) on their
own, using the hardware/software platform of their choosing.
For the benchmark comparisons using the IBM WebSphere Trade application (originally created by
IBM as a best-practice performance application for IBM WebSphere) , Microsoft created an
application that is functionally equivalent to the IBM WebSphere Trade application, both in terms
of user functionality and middle-tier database access, transactional and messaging behavior. This
application was created using best-practice programming techniques for .NET and the Microsoft
Application Development platform. The resulting application, the
.NET StockTrader, is now
published on MSDN as a best-practice .NET enterprise application at
http://msdn.microsoft.com/stocktrader. The .NET StockTrader is a service-oriented application that
IBM WebSphere 7/Power6 vs. Microsoft .NET 4.0/HP BladeSystem Benchmark Report Page 5
utilizes Windows Communication Foundation (WCF) for its underlying remoting and messaging
architecture. The user interface is an ASP.NET/C# Web application that is equivalent to the IBM
WebSphere Trade Java Server Pages (JSP) application. Additionally, the middle-tier services,
written in C#, mirror the functionality and transactional characteristics of the backend IBM
WebSphere Trade services which are based on JAVA EE 5 and the IBM WebSphere 7 application
server. Microsoft also modified the IBM WebSphere Trade 6.1 application to take advantage of
IBM WebSphere 7, including the use of a streamlined JSP/Servlet/JDBC architecture (vs. EJBs), and
the latest JAX-WS Java Enterprise Web Services software stack.
For the benchmark comparisons using the WSTest workload, Microsoft created the equivalent Web
Services using IBM WebSphere 7 and JAX-WS; as well as a C# implementation based on Microsoft
.NET and WCF Web Services. These sources are also included in the .NET StockTrader download on
MSDN.
Multiple Clients with Open Integration to Middle Tier via WCF
As a service-oriented application based on WCF, multiple interoperability scenarios are enabled
with the .NET StockTrader. Since both the IBM WebSphere 7-based Trade application and the .NET
StockTrader application expose their middle-tier services as industry-standard Web Services, the
two applications can be seamlessly integrated with no code changes required. The JSP Trade front-
end application can fully utilize the .NET middle tier services and messaging capabilities of the .NET
StockTrader; and the ASP.NET StockTrader front-end application can fully utilize the Java-based
WebSphere 7 Trade middle tier services and messaging capabilities. This interoperability is possible
with the .NET StockTrader since WCF, Microsoft’s component remoting and distributed application
programming model, is fundamentally based on open Web Service standards including SOAP, XML
and the latest WS-* industry standards. In addition to the ASP.NET Web based application that
integrates via services with the middle tier, the sample also includes a Windows Presentation
Foundation (WPF) desktop client (also developed in C#), that provides a smart-client interface to
the middle tier. The WPF client can also seamlessly connect to either .NET middle tier services, or
the IBM WebSphere 7 Trade middle tier services simply by changing the services URL in the
configuration page—no code changes are required to achieve this interoperability.
Full Disclosure Notice
The complete source code, test script flow and all testing methodology for this benchmark are available
online. Any reader may download and view the actual code for all implementations tested, and may
further perform the benchmark for themselves to verify the results. The benchmark kit can be
downloaded from http://msdn.microsoft.com/stocktrader. Extensive time was taken to generate
results that represent optimal tuning for the platforms tested, and we are quite confident in the results.
We encourage customers to download each kit and perform their own comparative testing and
functional and technical reviews of each workload tested.
IBM WebSphere 7/Power6 vs. Microsoft .NET 4.0/HP BladeSystem Benchmark Report Page 6
Middle-Tier Hardware Platforms Tested
A key goal of the testing was to document the performance and relative cost of IBM WebSphere 7
running on an IBM Power 570 server (Power6-based) vs. IBM WebSphere 7 on a Hewlett Packard
BladeSystem (Intel-based) running Microsoft Windows Server 2008 R2; and then to compare these
results to the identical workloads running on the HP BladeSystem with Microsoft .NET and Windows
Server 2008 R2. Complete pricing details, including hardware and software costs, are documented in
Appendix A of this paper. For the first two workloads, which include database access, each platform was
tested against the same database hardware and disk configuration, which was carefully monitored to
ensure the databases were never a bottleneck for any middle-tier platform tested. In addition, network
monitoring was carefully conducted to ensure the network was never an artificial bottleneck. Hence,
the performance measured accurately captures the peak TPS rate achieved on the middle tier hardware
and software platform tested.
In all cases, server CPU saturation rates were at or above 96% CPU
utilization at peak TPS, reflecting the fact no external bottleneck (database, network) artificially
limited the results achieved. Additionally, in all testing, database CPU processor utilization remained below 50%, with no significant
disk queuing.
IBM Power 570 (based on Power6 Architecture) running IBM AIX 5.3 8 IBM Power6 cores, operating at 4.2GHz
32 GB RAM
AIX 5.3
4 x 1 GB NICs
Hewlett-Packard C7000 Blade System with 4 HP ProLiant BL460c blades 4 Hewlett Packard ProLiant BL460c blades
Each blade has one Quad-Core Intel® Xeon® E5450 (3.00GHz, 1333MHz FSB, 80W) Processor
Each blade has 32 GB RAM
Each blade is running Microsoft Windows Server 2008 R2/64-bit
Each blade has 2 x 1 GB NICs
For the Trade Web Application benchmark and the Trade Web Services benchmark, two separate
databases are utilized to ensure enough database and disk I/O capacity to handle the large volume of
transactions each platform is able to produce.
For the IBM WebSphere 7 on IBM Power 570 platform tests for the Web application and Trade
Web Services test, two instances of IBM WebSphere (nodes) are running on the IBM Power 570
server, each configured to communicate with a separate and dedicated backend trade database.
IBM DB2 v9.5 Enterprise Edition (64-bit, Windows Server) is used for each of these databases,
configured on identical hardware (see the database section for details).
The WSTest benchmark does not utilize a database; a single instance of IBM WebSphere 7 was
used on the Power 570 server and on each HP Blade.
IBM WebSphere 7/Power6 vs. Microsoft .NET 4.0/HP BladeSystem Benchmark Report Page 7
For the IBM WebSphere 7 on HP BladeSystem C7000 platform tests (Windows Server 2008 R2),
one instance of IBM WebSphere is running per blade, with two blades communicating to one of
the DB2 databases, and two blades communicating to the other dedicated IBM DB2 database.
For the Microsoft .NET/Windows Server 2008 platform tests on the HP BladeSystem C7000, a
single .NET 4.0 CLR instance is running on each blade. Two servers are communicating to one
database, two servers to the second database. The databases used for the .NET tests are
Microsoft SQL Server 2008, 64-bit, on Windows Server 2008 R2. They run on the exact same
hardware (servers, disks) as the IBM DB2 9.5 databases used in the WebSphere 7 tests.
IBM WebSphere 7/Power6 vs. Microsoft .NET 4.0/HP BladeSystem Benchmark Report Page 8
Document Outline
- Executive Summary
- Introduction
- .NET StockTrader Sample Application and Performance Kit
- Multiple Clients with Open Integration to Middle Tier via WCF
- Full Disclosure Notice
- Middle-Tier Hardware Platforms Tested
- IBM Power 570 (based on Power6 Architecture) running IBM AIX 5.3
- Hewlett-Packard C7000 Blade System with 4 HP ProLiant BL460c blades
- Test Methodology and Reporting Metrics
- Web Application Benchmark
- Trade Middle Tier Web Service Benchmark and WSTest Web Service Benchmark
- Running the Benchmarks and Capturing Reported Metrics
- .NET Framework 4.0 vs. .NET Framework 3.5
- Fair Benchmark Comparisons between .NET StockTrader and IBM WebSphere 7 Trade
- Database Access Technology/Programming Model
- Caching
- Enable Long Run Support
- Database Load
- Database Configuration
- Test Methodology for the Trade Web Application Benchmark
- Test Scripts
- Simulated User Settings
- IBM HTTP Server vs. Port 9080
- Web Application Pages Exercised by the Test Scripts
- Test Methodology for the Trade Web Services Benchmark and WSTest Web Service Benchmark
- Test Scripts
- IBM HTTP Server vs. Port 9080
- Benchmark Results
- Trade Web Application Test
- Trade Web Application Benchmark Discussion
- Trade Middle Tier Web Services Test
- Trade Middle Tier Web Services Benchmark Discussion
- WSTest Benchmark
- WSTest Benchmark Discussion
- Conclusion
- Appendix A: Pricing
- Hardware and Operating System Pricing
- IBM Power 570
- Hewlett Packard BladeSystem C7000
- Pricing for the Application Server Used in the Tests
- IBM WebSphere 7/IBM Power 570
- IBM WebSphere 7/ Hewlett Packard BladeSystem C7000
- Total Hardware, Operating System and Application Server Costs for IBM WebSphere 7/AIX on IBM Power 570 as tested
- Total Hardware, Operating System and Application Server Costs for IBM WebSphere 7/Windows Server 2008 on Hewlett Packard BladeSystem C7000 as tested
- Total Hardware, Operating System and Application Server Costs for Microsoft .NET/Windows Server 2008 on Hewlett Packard BladeSystem C7000 as tested
- Appendix B: Tuning Parameters
- IBM HTTP Server Tuning AIX
- ÿ
- IBM HTTP Server Tuning Windows Server 2008 R2
- .NET Tuning
Add New Comment