Customers looking to build distributed applications according to the principles of Service Oriented Architecture (SOA) can use the new .NET StockTrader as a blueprint.  This new sample/performance kit download includes full source code and a technical whitepaper that provides best-practices guidance for developers seeking to create high-performance, scalable, and interoperable financial services solutions on Microsoft’s Application Platform, including Windows Server, the .NET Framework 3.0, and the Windows Communication Foundation (WCF).  Some key highlights of the sample:

  • Performance:  Since performance is often a key concern when building mission-critical applications, the StockTrader download includes instructions for how to conduct performance testing across distributed environments.  This is particularly useful when combined with iterative configuration changes - for example, changing the WCF protocols used, or changing a service to use asynchronous delivery.  You can assess the performance impact of a change to the service implementation, relatively quickly.
  • Interop: The StockTrader application also illustrates full interoperability with the Trade 6.1 sample/benchmark application for WebSphere from IBM.  The service interfaces in the .NET StockTrader mirror those used in the Trade 6.1 application.  The .NET services can transparently interconnect with the WebSphere-based services in Trade 6.1, with a simple URL change in a configuration file. 
  • Scale out: The StockTrader application illustrates an architectural pattern for load-balancing across multiple instances of a WCF Service.  This simple and easy scale-out mechanism requires no special, extra-cost software, or obscure techniques.  And you don't need to configure Windows Load Balancing to do it. 
  • Configuration:  StockTrader also illustrates a pattern for managing the configuration of all the various distributed WCF services in the network.  As a services network expands, managing the configuration of all the various independent services becomes challenging.  All StockTrader services implement a common administrative (web services) interface, which allows secure, remote configuration changes, without mucking with WCF config files.  

An excellent sample and illustration of interop, StockTrader can also be used a comparative benchmark. The full benchmark results show that the .NET Web services in StockTrader deliver twice the performance of the equivalent Web services running in WebSphere, at  less than ¼ the software license cost of the IBM solution.

(Update, 27 July 2007: the source code is now available, download it here.)