Microsoft Corporation
Service Release 1, May 2002
Applies to:
Microsoft Solution for Supplier
Enablement
Microsoft Commerce Server 2002
Microsoft
BizTalk Server 2002
Summary: This guide provides information about the architecture of the Microsoft Solution for Supplier Enablement (MSSE) and its underlying product, Microsoft BizTalk Accelerator for Suppliers (AFS) Service Release 1. It also describes the various technologies that contribute to the solution. (38 printed pages)
Introduction
Solution Design
Solution Technologies
Solution Architecture
Performance and Scalability
URL Resources
Appendix A: Performance Characterization Hardware Details
Appendix B: Catalog Publishing Performance Characterization
Data
Appendix C: Remote Shopping Performance Characterization
Data
Appendix D: Purchase Order Reception Performance
Characterization Data
The Microsoft® Solution for Supplier Enablement (MSSE) integrates a number of different Microsoft products into a solution that allows suppliers of various sizes to begin trading electronically with their trading partners. These products include Microsoft BizTalk Server®2002, Microsoft Commerce Server®2002, Microsoft SQL Server™ 2000, and Microsoft BizTalk Accelerator for Suppliers (AFS) Service Release 1. AFS provides the integration of the other products required by this solution. Thus, a description of the architecture of the MSSE is the same as a description of the architecture of AFS.
This document consists of three sections. The first describes the design of the MSSE from the perspective of the three-phase design approach used by the Microsoft Solutions Framework (MSF):
The second section describes the various underlying technologies that are used to create the MSSE. This includes the Microsoft Windows Server System servers products already mentioned, as well as more general technologies such as XML and the XML-based business document standards upon which the MSSE relies.
The third section describes the architecture of the MSSE. In other words, how all of the constituent products are integrated to achieve the solution.
Anyone reading this paper should also read the product documentation for Microsoft BizTalk Accelerator for Suppliers (AFS), Microsoft BizTalk Server, and Microsoft Commerce Server, each of which contains specific and detailed information about the corresponding products. Additionally, the MSSE Deployment Guide specifies network, software, and hardware configuration details, including network diagrams, hardware specifications, and step-by-step software configuration instructions.
The solution design of the MSSE consists of brief descriptions of the sequence of conceptual, logical, and physical designs that resulted in this particular implementation of supplier enablement.
The conceptual design of the MSSE can be expressed as a statement of the basic functional requirements of the three areas of functionality in the MSSE: catalog publication, remote shopping, and purchase order reception.
The basic functional requirement of the catalog publishing functionality in the MSSE is that it provides a product catalog system capable of publishing catalog data to trading partners in the supported XML formats.
The basic functional requirement of the remote shopping functionality in the MSSE is that it provides a Web site capable of supporting relevant remote shopping sessions using the supported protocols.
The basic functional requirement of the purchase order reception functionality in the MSSE is that it provides an order processing system capable of receiving purchase orders from trading partners in the supported XML formats.
The logical design of the MSSE can be expressed as a statement of the logical components required to implement the three areas of functionality in the MSSE: catalog publication, remote shopping, and purchase order reception.
The logical components for all three functional areas can be divided into five distinct categories, as follows:
Within each of these categories, there are of course many ways in which, and many degrees to which, the architecture of the MSSE could be divided and analyzed. This document explains the analysis at a fairly high level.
The logical components of the catalog publishing functionality in the MSSE, categorized as described above, are:
Data Sources
Persisted Data
User Interfaces
External Components
Processes
The logical components of the remote shopping functionality in the MSSE, categorized as described above, are:
Data Sources
Persisted Data
User Interfaces
External Components
Processes
The logical components of the purchase order reception functionality in the MSSE, categorized as described above, are:
Data Sources
Persisted Data
In general, it needs to support mechanisms for becoming populated in the first place, and then modified over time.
User Interfaces
External Components
Processes
The physical design of the MSSE can be expressed as a statement of the physical components required to implement the logical components of the design, as described in the previous section.
Like the logical components, the physical components of the catalog publishing functionality in the MSSE are divided into the following categories: data sources, persisted data, user interfaces, external components, and processes.
Data Sources
Persisted Data
User Interfaces
External Components
Processes
Like the logical components, the physical components of the remote shopping functionality in the MSSE are divided into the following categories: data sources, persisted data, user interfaces, external components, and processes.
Data Sources
Persisted Data
User Interfaces
External Components
Processes
Like the logical components, the physical components of the purchase order reception functionality in the MSSE are divided into the following categories: data sources, persisted data, user interfaces, external components, and processes.
Data Sources
Persisted Data
User Interfaces
External Components
Processes
The MSSE relies on certain technologies about which you must be (or become) familiar. These include several emerging XML standards, the Microsoft BizTalk Accelerator for Suppliers (AFS) product, and several existing Microsoft Windows Server System products.
Developers working with the MSSE must be familiar with Web user interface technologies such as HTML, Active Server Pages (ASP), Visual Basic Scripting Edition (VBScript), Internet Explorer, DHTML, XML data islands, and so on. Familiarity with COM, including development of COM objects using Microsoft Visual Basic, is also required.
This section briefly reviews the main technologies used by the MSSE, including the relevant XML standards, and the roles of AFS, Commerce Server, BizTalk Server, and SQL Server.
XML has quickly become central to business-to-business (B2B) integration efforts. Microsoft Commerce Server 2002 has defined a number of XML formats, including those used to represent product catalogs and purchase orders. Companies like Commerce One and Ariba have also defined standards that include definitions for these same business documents, namely, xCBL and cXML, respectively.
Microsoft has responded to the emerging importance of XML by releasing Microsoft BizTalk Server 2002, one of the primary functions of which is the transformation of one XML format into another, and an associated user interface that makes this task easier.
This section provides an overview of the XML formats, or standards, that are important to the MSSE, including the Commerce Server XML standard, xCBL 3.0, cXML 1.1, cXML 1.2, SAP XML, and other related XML standards.
Microsoft Commerce Server 2002 defines XML formats for two documents that are directly relevant to Microsoft BizTalk Accelerator for Suppliers (AFS) — one for product catalogs and one for purchase orders.
The Commerce Server CatalogManager object has a method called ExportXML that can be used to export the contents of one or more catalogs to a file, formatted as XML. As shipped in Commerce Server 2002, this format is known as Commerce Server Catalog XML v2.0 format.
This updated API also supports export of an XML Data Reduced (XDR) file for the version 2.0 format of the current Commerce Server catalog schema. This file is used when the schema has been changed such that the maps in BizTalk Server need to be regenerated.
Commerce Server also defines an XML format for purchase orders, known as the Commerce Server Orders XML v1.0 format. Version 1.0 of this format can be successfully transformed using maps in BizTalk Server. This version did not change between Commerce Server 2000 and Commerce Server 2002.
These formats are important to AFS processing. The Commerce Server Catalog XML v2.0 format is exported from Commerce Server and submitted to the BizTalk Server transformation process during catalog publishing. The Commerce Server Orders XML v1.0 format is submitted to the Commerce Server Order Processing pipeline by the BizTalk Server transformation process during purchase order reception.
xCBL (XML Common Business Library) is a non-proprietary, robust standard for business document exchange, and although it is authored and maintained by Commerce One, xCBL data format standards and specifications are available free of charge in prominent XML repositories for anyone to use. Microsoft BizTalk Accelerator for Suppliers (AFS) uses version 3.0 of this standard.
The BizTalk Server specification files (XDR files) for xCBL 3.0 that are included in AFS were obtained from the xCBL 3.0 XDR files available from Commerce One. The specification files were modified to work with BizTalk Editor and BizTalk Mapper. Commerce One periodically updates their XML schema definitions.
For more information about the xCBL standard, see http://www.xcbl.org/.
For remote shopping, Commerce One has adopted and extended the SAP Open Catalog Interface (OCI) 2.0 standard. Although Commerce One uses this standard in conjunction with the xCBL 3.0 standard, it is based on HTML form fields rather than XML.
For more information about the SAP OCI 2.0 standard, see http://www.commerceone.net/.
cXML (commerce eXtensible Markup Language) is a streamlined standard for business document exchange, and although it is authored and maintained by Ariba, any company may freely use all aspects of this specification, subject to the terms of the Ariba license agreement.
Microsoft BizTalk Accelerator for Suppliers (AFS) supports versions 1.1 and 1.2 of this standard in its implementation.
Clarus has fully implemented version 1.1 of cXML.
The BizTalk Server specification files (XDR files) for cXML 1.1 and cXML 1.2 that are included in AFS were derived from the cXML 1.1 and cXML 1.2 DTD files available from Ariba. The specification files were modified to work with BizTalk Editor and BizTalk Mapper. Ariba periodically updates their XML schema definitions.
For more information about the cXML standards, see http://www.cxml.org/.
SAP Interface Repository Standard
The XML-based Interface Repository (IFR) is part of the Internet Business Framework. Its aim is to publish all standard SAP interfaces centrally as XML interfaces in agreement on W3C standards, and to provide the customer with the necessary infrastructure for business scenarios.
SAP Open Catalog Interface Standard
Open Catalog Interface (OCI) is the interface between catalogs and Commerce Server 2002. The SAP OCI uses standard Internet protocols, which have been configured to work with AFS. The OCI standard consists of two separate and distinct sections: the outbound section and the inbound section.
The outbound section sends and defines information from AFS to the catalog application. The information you send can include URLs and login data.
The inbound section sends and defines information from the catalog to AFS. The information you send can include items selected from the catalog, such as item descriptions, quantities ordered, and prices.
The following figure shows how catalogs are integrated with AFS using the SAP OCI standard.
Figure 1
The MSSE does not directly support other XML standards. But because BizTalk Server is used for XML transformation, and because BizTalk Server is designed to support generic XML transformation, it is straightforward to extend the AFS architecture to support other standards.
Maps and orchestrations in BizTalk Server can be customized to support other XML standards such as:
Also, specific vertical industries or individual companies may have developed their own private XML data formats.
Microsoft BizTalk Accelerator for Suppliers (AFS) is essentially the same as the MSSE. This new accelerator product for BizTalk Server is what provides the basic functionality of the MSSE.
AFS includes:
Microsoft Commerce Server 2002 is central to the MSSE. For example, AFS assumes that you are using the Commerce Server Product Catalog System for the catalog you want to provide to your trading partner. One of the new Commerce Server Business Desk modules supplied with AFS, called Catalog Publisher, is used to initiate the process of transforming and transporting your Commerce Server catalog to your trading partner.
AFS also assumes that you are using the Commerce Server orders database to store and manage the orders you receive from your trading partners. Orders, when received, are transformed and placed into the orders database, and another new Business Desk module provided with AFS, called Orders Manager, is used to view and process those orders.
Specifically, AFS and the MSSE extend Commerce Server in the following ways:
The Trading Partner Manager module is used to create and maintain trading partner profiles. Such profiles define the name of the trading partner, the format of the XML catalog the trading partner can process, and the name of BizTalk Server transport channel used to deliver the catalog to the trading partner.
The Catalog Publisher module is used to send the contents of a Commerce Server 2002 catalog in an XML format that is suitable for a particular trading partner. The required catalog transformation is accomplished using BizTalk Server 2002.
The Orders Manager module is used to manage purchase orders received from trading partners that are selling your products and/or services using the catalogs you have published.
Another way in which AFS makes explicit use of Commerce Server is its use of a Commerce Server pipeline object to move order details from a purchase order received from a trading partner into the Commerce Server orders database.
Microsoft BizTalk Accelerator for Suppliers (AFS) uses BizTalk Server 2002 to transform XML files from one format into a different XML format. This includes the transformation of Commerce Server Catalog XML v2.0 files into their xCBL 3.0, cXML 1.1, or cXML 1.2 equivalent. It also includes the transformation of purchase orders formatted using the xCBL 3.0 standard, the SAP XML standard, the cXML 1.1 standard, or the cXML 1.2 standard into their Commerce Server Order XML v1.0 equivalent.
BizTalk Server also provides a mechanism for sending transformed catalogs to your trading partners. The mechanism chosen largely depends on the capabilities of your trading partners. They might have a URL to which you can post the transformed catalog for automated processing. On the other hand, some trading partners might require you to transmit the catalog by some other means, such as a file upload, after which manual processing may be required.
For order reception, the BizTalk Orchestration Designer and an associated XLANG schedule are used to control the sequence of processing steps that are performed in the course of converting a xCBL 3.0, SAP XML, cXML 1.1, or cXML 1.2 purchase order into a form that can be stored in your Commerce Server orders database.
BizTalk Server application integration components (AICs) are used in several situations where special processing is required to properly complete a catalog transformation.
Microsoft SQL Server 2000 provides the underlying data persistence for catalog and order data within the MSSE. This dependency is inherited from the Commerce Server dependency on SQL Server.
This section provides a description of the architecture of the MSSE, first from a high-level, and then in a detailed manner for each of the functional areas of the MSSE: catalog publishing, remote shopping, and purchase order reception/response. Readers should also review the MSSE Deployment Guide for more information about the MSSE network, software, and hardware configuration details. The MSSE Deployment Guide provides the implementation details for deploying a core-medium or medium-level solution.
The following figure illustrates the architecture of the MSSE and shows the Commerce Server Business Desk tasks required to create a trading partner profile, publish a catalog to a trading partner, and work with purchase orders received from a trading partner. These tasks are labeled with circled numbers and are explained following the figure.
The figure also shows how data flows between various entities in the course of catalog publication and purchase order reception. Particular data flows are labeled with letters and are explained following the figure.
Figure 2
The workflow for catalog publication and purchase order reception for MSSE consists of the following tasks:
Data flows through AFS and between AFS, trading partners, and buyers occur in the following sequence:
Note An asynchronous order response message is supported for xCBL 3.0 and SAP XML formatted messages.
In the MSSE, catalog publishing begins when a business manager clicks the Refresh button in Commerce Server Business Desk. The following figure shows a supplier using Commerce Server 2002, BizTalk Server 2002, and the extensions provided by Microsoft BizTalk Accelerator for Suppliers (AFS) to upload their product catalog to a trading partner. An important aspect of the flow concerns the format of the data at various points, as shown by the lettered circles and the data format key that follows the figure.
Figure 3
B: XML file
C: Commerce Server Catalog XML v2.0
D: xCBL3.0, cXML 1.1, or cXML 1.2 catalog
Starting at the top and working toward the bottom, the figure above shows the following steps in publishing catalogs:
Preparation for catalog publishing involves the following steps, many of which are performed automatically by the installation process, or which can be done manually using files and instructions provided in the AFS Software Development Kit (SDK):
The installation process performs much of the configuration required for catalog publishing automatically. For more information about the installation process and the configuration that must be performed following installation, see the Microsoft BizTalk Accelerator for Suppliers Installation Guide (a separate HTML file) and the "Operations Overview" topic in the AFS Online Help.
For installations where manual configuration is required, the AFS Software Development Kit (SDK) provides source code files and various XML files for configuring Commerce Server and BizTalk Server. These files include:
New Business Desk configuration files are also included that may be used to ease the integration of the new modules into Business Desk.
You will need to create new map files in BizTalk Server if you have added product properties that you want mapped, or removed product properties that are currently mapped. The product properties in the Commerce Server map are based on those properties in the sample catalog AdventureWorks.xml.
The architecture of the remote shopping functionality within the MSSE differs enough between the two supported protocols that they are presented separately in the sub-sections that follow.
Microsoft BizTalk Accelerator for Suppliers (AFS) validates the organization user for trading partners based on the Open Catalog Interface (OCI) 2.0 Outbound Section message. The OCI Outbound Section could be originated either on the Commerce One EBD application or the SAP EBP application. Validation is successful if the trading partner is pre-registered in Commerce Server Business Desk. Anonymous users are not validated and, therefore, are denied access to the supplier AFS site.
OCI supports remote shopping at the supplier level, but not at the product level. When a user chooses to initiate a remote shopping session, a new browser opens (or their existing browser is re-directed) to the chosen supplier site. On the supplier site, they can shop normally, viewing products, and adding and removing products from their remote basket. When they check out of the remote basket, information about the remotely selected products is returned to their buyer application and displayed in its basket.
The following figure, and the associated numbered descriptions that follow, provides a more detailed, step-by-step account of this process.
Figure 4
When the user clicks the submit button on the page FormPostRemoteBasket.asp, or when it automatically submits itself, the form containing the products chosen in the remote shopping session is (HTTP) posted to the OCI-based Web site. This completes the RoundTrip process.
For more detailed information about the RoundTrip remote shopping architecture, see "Implementation Details" in the AFS Online Help.
MSSE includes remote shopping functionality for Punchout using the cXML 1.1 and cXML 1.2 standards. This format can be used with processing for Ariba Punchout or for Clarus Tap Out.
Ariba Punchout
In the Microsoft BizTalk Accelerator for Suppliers (AFS) implementation, when users shop in the Ariba buyer application and choose to add a product to their shopping basket that the associated supplier has designated as remotely configurable, the buyer application opens a browser that displays a remote basket page on the supplier Web site. The remote basket already contains the chosen product.
As provided in AFS, the remote basket page allows users to freely manipulate their remote basket, adding or removing products as they choose. When the users check out of the remote basket, the browser is closed and they are returned to the Ariba buyer application where their remotely selected products are now displayed.
The following figure provides a more detailed, step-by-step account of this process.
Figure 5
In the AFS implementation, the Create and Edit operations are handled in the same manner.
For more detailed information about the Punchout remote shopping architecture, see "Implementation Details" in the AFS Online Help.
Clarus Tap Out
Remote shopping from the Clarus trading partner is known as Tap Out and uses the cXML 1.1 standard.
Users can return to the same supplier Web site and update the contents of their remote shopping basket created during a prior remote shopping session using the Edit operation. An Edit operation is used so that those products are shown again in their remote basket.
As with the Ariba implementation, remote shopping users can freely manipulate their remote basket, adding or removing products as they choose. When they check out of the remote basket, the browser is closed and the users are returned to the Clarus buyer application, where their remotely selected products are now displayed.
In Microsoft BizTalk Accelerator for Suppliers (AFS), purchase order reception begins when a trading partner (HTTP) posts a purchase order to the ASP page you have established for that purpose. The reception of a purchase order ends when the purchase order data is saved to the Commerce Server orders database. Processing of the purchase order continues as the order is fulfilled and shipped to the customer.
The following figure, and the associated numbered descriptions that follow, describe the steps involved in the purchase order reception process.
Figure 6
The purchase order XML document is then placed in one of four different Message Queuing queues, based on the standard used. (Each of the four protocol-specific receive functions in BTS is watching a different message queue, waiting for purchase orders to be placed there.) The page then waits (polls) for the Message Queuing acknowledgement (dotted line from the Message Queuing queue to 2).
Note If Commerce Server and BTS are installed on different computers, Message Queuing is responsible for moving the purchase order XML document from the former to the latter.
For xCBL 3.0 and SAP XML purchase orders, the HTTP response (dotted line from 2 to 1) only contains the HTTP status indicating whether the purchase order was successfully received and passed to the Message Queuing queue.
For cXML 1.1 and 1.2 purchase orders, the HTTP response also includes the OrderResponse message (constructed using XSL to transform the OrderRequest message).
For more information about the page ReceivePO.asp, see "Purchase Order Reception from the Trading Partner" in AFS Online Help.
Next, the transformed XML document is passed to the corresponding transform messaging port.
Note Due to the architecture of BTS, there are four distinct combinations of transform channel and messaging port, one for each of the four supported source XML formats. All four of these channel/messaging port pairs pass the transformed XML document to an instance of the same XLANG schedule.
For more information about transform channel processing, see "Transform Channel and Messaging Port" in the AFS Online Help.
For more information about transform messaging port processing, see "Transform Channel and Messaging Port" in the AFS Online Help.
For more information about XLANG schedule processing, see "XLANG Schedule" in the AFS Online Help.
Note Because the document has already been transformed to the Commerce Server Order XML v1.0 format, and because it is being posted to a single ASP receive page regardless of the source XML format, a single transport channel/messaging port pair is used.
For more information about transport channel processing, see "Transport Channel and Messaging Port" in the AFS Online Help.
For more information about how the trading partner is identified so that its organization profile object can be retrieved, see the "VerifyOrganization" routine in the AFS Online Help.
The purchase order XML document is then converted into an equivalent Dictionary object, which is passed to the Order Processing pipeline. If the pipeline completes successfully, the following steps are taken:
For more information about the processing that occurs in the page _recvpo.asp, see "Purchase Order Reception from BizTalk Server" in the AFS Online Help.
For more detailed information about the purchase order reception architecture, see "Implementation Details" in the AFS Online Help.
This section provides a high-level review of the performance and scalability characteristics of the Microsoft Solution for Supplier Enablement (MSSE).
The Microsoft BizTalk Accelerator for Suppliers (AFS) Solution Site included in the MSSE is based on the Commerce Server Retail Solution Site. Although the MSSE usage profile suggests that the B2B-oriented MSSE site will experience less Web browsing traffic than a retail Web site, an important performance goal of the MSSE was to maintain Web site performance (insignificant performance degradation) while also processing the additional B2B transactions that occur in the MSSE.
The medium deployment configuration, as defined in the MSSE Deployment Guide, is the base configuration for the site profile. It is recommended that users determine capacity requirements based on the methodology defined in the document "Microsoft Commerce Server 2000 Supplier Site Performance Characteristics: Transaction Cost Analysis," which can be found at http://www.microsoft.com/commerceserver/performance.
Users can refer to this document to review the relative impact of the MSSE B2B transactions on Solution Site performance. MSSE B2B transaction performance is CPU-bound.
The core-medium deployment configuration is intended for small businesses that do not anticipate a need to scale.
Performance characterization data for the three main feature areas (catalog publishing, remote shopping, and purchase order reception/response) on the two supported deployments (core-medium and medium) is included in the appendices.
This section provides details about the interactions that occur between the MSSE and a trading partner.
Retail shopping interactions are simulated using the Application Center Testing (ACT) tool to stress the site to a "steady state" of approximately 65%-75% CPU utilization, which represents the performance "baseline." Retail shopping includes the interactions of many concurrent users visiting the site. The interactions include:
Catalog publishing interactions include publishing catalogs of various sizes to a file in both the cXML 1.2 and xCBL 3.0 formats. The performance data includes:
Additionally, the impact of this processing on the AFS Solution Site was measured by determining the number of ASP pages served before and during the processing of these interactions.
There is an impact on performance while publishing catalogs, but the duration of that impact is relatively short when publishing catalogs of less than 60,000 SKUs. It is recommended that catalogs containing more than 60,000 SKUs be broken into multiple, smaller catalogs.
Note Performance characterization was not performed for the cXML 1.1 standard, although it is reasonable to assume that it would be very similar to the results for cXML 1.2 standard.
For performance data related to catalog publishing, see APPENDIX B: Catalog Publishing Performance Characterization Data.
Remote shopping interactions include the remote shopping setup requests and checking out remote shopping baskets of various sizes. The performance data includes:
Performance was characterized for both the cXML 1.2 and OCI 2.0 protocols.
Additionally, the impact of this processing on the AFS Solution Site was measured by determining the number of ASP pages served before and during the processing of these transactions.
There is an impact on performance while processing remote shopping interactions, but the duration of that impact is relatively short. If it is anticipated that remote shopping baskets will include more than 100 line items, administrators should consider scaling the Commerce Server Web servers by adding additional Web servers to a Web farm or by using faster processors.
Note Performance characterization was not performed for the cXML 1.1 standard, although it is reasonable to assume that it would be very similar to the results for cXML 1.2 standard.
For performance data related to remote shopping, see APPENDIX C: Remote Shopping Performance Characterization Data.
Purchase order reception interactions include receiving and processing purchase orders of various sizes and in various frequencies in the cXML 1.2, SAP XML, and xCBL 3.0 formats. The performance data includes:
The impact of this processing on the AFS Solution Site has been measured by determining the number of ASP pages served before and during processing of these transactions.
Note Performance characterization was not performed for the cXML 1.1 standard, although it is reasonable to assume that it would be very similar to the results for cXML 1.2 standard.
NoteThe xCBL 3.0 and SAP XML formats are significantly more complex than the cXML 1.2 format, which results in larger XML documents. The larger documents require additional time and resources to process and thus have a greater impact on performance.
For performance data related to purchase order reception, see APPENDIX D: Purchase Order Reception Performance Characterization Data.
The performance of the MSSE exceeds the following usage profile:
For more information on the process of developing an online usage profile, see the document "Commerce Server 2000: Creating a Usage Profile for Capacity Planning," which can be found at:http://www.microsoft.com/commerceserver/performance.
The site profile addresses a medium-sized business with the following characteristics:
The Application Center Testing (ACT) tool was used to perform these tests.
This section considers a number of factors related to the scalability of various technologies used by the MSSE.
The AFS Solution Site is typically deployed on a separate Web server than the Business Desk Web site. Administrators can scale-out the AFS Solution Site by creating a Web farm that uses Network Load Balancing (NLB). Availability will be enhanced through the redundancy provided by the Web farm and performance will be enhanced because the load will be distributed across the servers in the Web farm. Increased Web site traffic and increased complexity of the content in the Web site will both impact performance. If CPU utilization remains consistently above 80 percent, additional servers should be added to the Web farm. Alternatively, performance can be scaled-up by substituting Web servers with faster CPUs.
The Business Desk Web site hosts the administration user interface and is typically subject to less traffic than the AFS Solution Site. As required, this Web site can be scaled using similar means as the AFS Solution Site.
BizTalk Server (BTS) can be scaled-up by adding additional memory and by increasing CPU speed. BTS also supports scaling-out the Messaging Services by adding multiple BTS Servers into BizTalk Groups. The MSSE has not been tested with this configuration.
SQL Server can be scaled-up by adding additional memory and by increasing CPU speed. Commerce Server and BTS product documentation defines how to improve performance by scaling-out the deployment of the databases used by these applications across multiple SQL servers. The MSSE has not been tested with this configuration.
The following URL provides additional information:
Microsoft Solution for Supplier Enablement:
http://www.microsoft.com/business/solutions/MSSE/
Results of this type of performance testing may vary depending on the hardware and software configuration details of each MSSE implementation.
This appendix shows the hardware used for performance characterization in each of the two tested deployments: core-medium and medium.
The following table lists the tested hardware configuration for the core-medium deployment configuration.
Server | Processor | RAM | Hard Disk Space | Network Adapters |
---|---|---|---|---|
Web | Dual 1 GHz | 512 MB | 12 GB | 1 |
SQL | Quad400 MHz | 2 GB | 25 GB | 1 |
* Network adapters are all 100baseT.
The following table lists the tested hardware configuration for the medium deployment configuration.
Server | Processor | RAM | Hard Disk Space | Network Adapters |
---|---|---|---|---|
ISA Server
(external) |
Dual 733 MHz | 2 GB | 12 GB | 1 |
DMZ Web Server | Dual 733 MHz | 2 GB | 12 GB | 1 |
DMZ Web Server | Dual 733 MHz | 2 GB | 12 GB | 1 |
DMZ Web Server | Quad 550 MHz | 1 GB | 12 GB | 1 |
ISA server (internal) | Quad 550 MHz | 1 GB | 12 GB | 1 |
Business Desk Server | Quad 550 MHz | 1 GB | 12 GB | 1 |
BizTalk Server | Quad550 MHz | 1 GB | 12 GB | 1 |
SQL Server | Quad 550 MHz | 1 GB | 25 GB | 1 |
* Network adapters are all 100baseT.
Note In the medium deployment, SQL Server experiences greater load than in the core-medium deployment. This is because there are three DMZ Web servers accessing it rather than just one. The performance characteristics presented in appendices B, C, and D reflect this configuration.
This appendix shows the performance characterization for the catalog publishing feature of the MSSE. It contains two sets of tables.
These tests were performed using Commerce Server catalogs based on the AdventureWorks catalog provided in the AFS SDK.
The following tables show the amount of time taken to publish catalogs of various sizes in each of the two tested deployments: core-medium, and medium. The total time taken to publish a catalog is shown as the sum of two distinct phases of the publication process:
Protocol | cXML 1.2 | xCBL 3.0 | ||||
---|---|---|---|---|---|---|
Time | TE | TT | Total | TE | TT | Total |
Scenarios | ||||||
1,000 | 6 | 16 | 22 | 3 | 13 | 16 |
10,000 | 27 | 73 | 100 | 27 | 153 | 180 |
30,000 | 83 | 361 | 444 | 67 | 959 | 1,026 |
60,000 | 141 | 1,342 | 1,483 | 131 | 4,194 | 4,325 |
Protocol | cXML 1.2 | xCBL 3.0 | ||||
---|---|---|---|---|---|---|
Time | TE | TT | Total | TE | TT | Total |
Scenarios | ||||||
1,000 | 4 | 10 | 14 | 3 | 69 | 72 |
10,000 | 25 | 61 | 86 | 26 | 118 | 144 |
30,000 | 85 | 271 | 356 | 75 | 674 | 749 |
60,000 | 153 | 833 | 986 | 181 | 2,345 | 2,526 |
Table Key:
The following tables show the performance impact of publishing catalogs of various sizes in each of the two tested deployments: core-medium and medium. Relative to a baseline measurement, the average and minimum number of ASP pages served per second by the AFS Solution Site while catalogs are being published are shown. For the minimum number of ASP pages served, the duration of the minimum measurement is also shown.
Protocol | cXML 1.2 | xCBL 3.0 | ||||||
---|---|---|---|---|---|---|---|---|
# of SKUs | Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
1,000 | 68.8 (4,128) |
48.0 (2,880) |
See Note | < 1 | 68.8 (4,128) |
47.9 (2,874) |
See Note | < 1 |
10,000 | 68.8 (4,128) |
66.3 (3,978) |
See Note | < 1 | 68.8 (4,128) |
65.7 (3,942) |
See Note | < 1 |
30,000 | 69.5 (4,170) |
64.0 (3,840) |
See Note | < 1 | 69.5 (4,170) |
62.5 (3,750) |
See Note | < 1 |
60,000 | 69.5 (4,170) |
60.9 (3,654) |
See Note | < 1 | 69.5 (4,170) |
60.3 (3,618) |
See Note | < 1 |
Note The impact on site performance was a brief spike representing less than a second in elapse time.
Protocol | cXML 1.2 | xCBL 3.0 | ||||||
---|---|---|---|---|---|---|---|---|
# of SKUs | Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
1,000 | 75.7 (4,542) |
74.4 (4,464) |
See Note | < 1 | 75.7 (4,542) |
65.6 (3,936) |
See Note | < 1 |
10,000 | 75.7 (4,542) |
77.3 (4,638) |
See Note | < 1 | 75.7 (4,542) |
81.0 (4,860) |
See Note | < 1 |
30,000 | 74.1 (4,446) |
73.1 (4,386) |
See Note | < 1 | 74.1 (4,446) |
73.9 (4,434) |
See Note | < 1 |
60,000 | 74.1 (4,446) |
73.9 (4,434) |
See Note | < 1 | 74.1 (4,446) |
74.1 (4,446) |
See Note | < 1 |
Note The impact on site performance was a brief spike representing less than a second in elapse time.
Table Key:
For the medium deployment environment, the Min values represent the number of ASP pages served per second by the DMZ Web server that experienced the greatest momentary performance drop. In these tests, the DMZ Web servers did not experience their momentary performance drops at the same time.
This appendix shows the performance characterization for the remote shopping feature of the MSSE in each of the tested deployments: core-medium and medium. It contains a set of tables that show, relative to a baseline measurement, the average and minimum number of ASP pages served per second by the AFS Solution Site while certain remote shopping operations are being performed. For the minimum number of ASP pages served, the duration of the minimum measurement is also shown.
This test was performed using products from the AdventureWorks catalog provided in the MSSE SDK.
Protocol | cXML 1.2 | OCI 2.0 | ||||||
---|---|---|---|---|---|---|---|---|
Scenarios | Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
100 setup requests |
70
(4,200) |
63.5
(3,810) |
See Note | <1 | 70
(4,200) |
63
(3,780) |
See Note | <1 |
100x10 checkout |
70
(4,200) |
70
(4,200) |
See Note | <1 | 70
(4,200) |
72.5
(4,350) |
See Note | <1 |
100x100 checkout |
70
(4,200) |
67.1
(4,026) |
See Note | <1 | 70
(4,200) |
65.5
(3,930) |
See Note | <1 |
Note The impact on site performance was a brief spike representing less than a second in elapse time.
Protocol | cXML 1.2 | OCI 2.0 | ||||||
---|---|---|---|---|---|---|---|---|
Scenarios | Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
100 setup requests |
81
(4,860) |
82.8
(4,968) |
See Note | <1 | 81
(4,860) |
83
(4,980) |
See Note | <1 |
100x10 checkout |
81
(4,860) |
80.1
(4,806) |
See Note | <1 | 81
(4,860) |
83.5
(5,010) |
See Note | <1 |
100x100 checkout |
81
(4,860) |
80
(4,800) |
See Note | <1 | 81
(4,860) |
76.2
(4,572) |
See Note | <1 |
Note The impact on site performance was a brief spike representing less than a second in elapse time.
Note For the medium deployment environment, the Avg values are larger than the Base values. This is because the CPU utilization never reached 100%, and was thus able to support the additional load of the simulated remote shopping users.
Table Key:
In these tests, the DMZ Web servers did not experience their momentary performance drops at the same time.
This appendix shows the performance characterization for the purchase order reception feature of the MSSE. It contains two sets of tables.
These tests were performed using cXML 1.2 , xCBL 3.0, and SAP XML purchase orders similar to those provided in the AFS SDK.
The following tables show the amount of time taken to receive purchase orders of various sizes in each of the deployments: core-medium and medium.Times were recorded for the following processes.
Protocol | cXML 1.2 | xCBL3.0 | SAP XML | |||
---|---|---|---|---|---|---|
Time | TR | Total | TR | Total | TR | Total |
Scenario | ||||||
100x10 continuous |
106 | 163 | 116 | 187 | 133 | 155 |
100x100 continuous |
973 | 992 | 973 | 998 | 973 | 997 |
100x10 burst |
95 | 133 | 76 | 181 | 81 | 149 |
100x100 burst |
61 | 149 | 82 | 185 | 97 | 159 |
Protocol | cXML 1.2 | xCBL3.0 | SAP XML | |||
---|---|---|---|---|---|---|
Time | TR | Total | TR | Total | TR | Total |
Scenario | ||||||
100x10 continuous |
90 | 107 | 90 | 102 | 91 | 110 |
100x100 continuous |
972 | 983 | 973 | 990 | 971 | 983 |
100x10 burst |
20 | 113 | 23 | 96 | 22 | 143 |
100x100 burst |
30 | 245 | 66 | 410 | 27 | 242 |
Note For the medium deployment environment, the Avg values are larger than the Base values. This is because the CPU utilization never reached 100%, and was thus able to support the additional load of the simulated purchase orders.
Table Key:
The following tables show the performance impact of receiving purchase orders of various sizes at various speeds in the tested deployments: core-medium and medium. Relative to a baseline measurement, the average and minimum number of ASP pages served per second by the MSSE Solution Site while receiving purchase orders are shown. Please note that the average is measured over Total processing time, where Total is the elapse time between sending the first order until all of the orders are in the Commerce Server database.
Protocol | cXML 1.2 | xCBL 3.0 | SAP XML | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Scenarios | Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
100x10 continuous |
70
(4,200) |
28.7
(1,722) |
See Note | <1 | 70
(4,200) |
12.8
(768) |
0 | 20 | 70
(4,200) |
19.8
(1,188) |
See Note | <1 |
100x100 continuous |
70
(4,200) |
58.1
(3,486) |
See Note | <1 | 70
(4,200) |
42
(2,520) |
0 |
50 | 70
(4,200) |
56
(3,360) |
0 | 10 |
100x10 burst |
70
(4,200) |
22
(1,320) |
0 | 5 | 70
(4,200) |
24
(1,440) |
0 | 20 | 70
(4,200) |
31.4
(1,884) |
0.5
(30) |
10 |
100x100 burst |
70
(4,200) |
12.5
(750) |
0 | 50 | 70
(4,200) |
11.8
(708) |
0 | 90 | 70
(4,200) |
8.6
(516) |
0 | 101 |
Note The impact on site performance was a brief spike representing less than a second in elapse time.
Protocol | cXML 1.2 | xCBL 3.0 | SAP XML | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Scenarios | Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
Base (CU) |
Avg (CU) |
Min (CU) |
Dur at Min |
100x10 continuous |
81
(4,860) |
75
(4,500) |
See Note | < 1 | 81
(4,860) |
82.4
(4,944) |
Note 1 | < 1 | 81
(4,860) |
81.6
(4,896) |
See Note | < 1 |
100x100 continuous |
81
(4,860) |
79.7
(4,782) |
See Note | < 1 | 81
(4,860) |
81
(4,860) |
Note 1 | < 1 | 81
(4,860) |
83.7
(5,022) |
See Note | < 1 |
100x10 burst |
81
(4,860) |
80
(4,800) |
See Note | < 1 | 81
(4,860) |
34.5
(2,070) |
Note 1 | < 1 | 81
(4,860) |
79
(4,740) |
See Note | < 1 |
100x100 burst |
81
(4,860) |
63
(3,780) |
See Note | < 1 | 81
(4,860) |
53
(3,180) |
0.5 | 1 | 81
(4,860) |
62
(3,720) |
See Note | < 1 |
Note The impact on site performance was a brief spike representing less than a second in elapse time.
Table Key:
For the medium deployment, the Base values represent the number of ASP pages served per second by all three DMZ Web servers combined.
In these tests, the DMZ Web servers did not experience their momentary performance drops at the same time.