Monday, October 5, 2009

Excel Services Architecture


Excel Services Architecture

Excel Services is part of Microsoft Office SharePoint Server 2007. Excel Services is built on ASP.NET and Windows SharePoint Services 3.0 technologies. There are three core Excel Services components:

  • Excel Web Access
  • Excel Web Services
  • Excel Calculation Services

Excel Services handles communication among the three components and load-balances the requests made to Excel Calculation Services.

The Excel Web Access, Excel Services, and Excel Calculation Services components can be divided into two major groups: the components on a front-end server (also known as the "Web front end"), and the component on a back-end application server.

Excel Services architecture

Excel Web Access

Excel Web Access is an Excel Services Web Part in Office SharePoint Server 2007 that renders (in other words, creates the HTML for) live Excel workbooks on a Web page, and allows the user to interact with those workbooks and explore them. Excel Web Access is the visible Excel Services component for the user. You can use Excel Web Access like any other Web Part in Office SharePoint Server 2007. Excel Web Access does not require anything to be installed on the user's client computer.

The Excel Web Access Web Part properties are also customizable. For more information, see the Microsoft.Office.Excel.Server.WebUI namespace reference documentation.

Excel Web Services

Excel Web Services is the Excel Services component that provides programmatic access to its Web service. You can develop applications that call Excel Web Services to calculate, set, and extract values from workbooks, as well as refresh external data connections. Using Excel Web Services, you can incorporate server-side workbook logic into an application, automate the updating of Excel workbooks and create application-specific user interfaces around server-side Excel calculation.

NoteNote:

When you make changes to a workbook—for example, by setting values to a range using Excel Web Services—the changes to the workbook are preserved only for that particular session. The changes are not saved or persisted back to the original workbook. When the current workbook session ends (for example, when you call the CloseWorkbook method, or the session times out), whatever changes you made will be lost.

If you want to save changes you make to a workbook, you can use the GetWorkbook method and then save the workbook using the API of the destination file store. For more information, see How to: Get an Entire Workbook or a Snapshot and How to: Save a Workbook.

For more information about Excel Web Services, see Excel Services Development Roadmap and the Microsoft.Office.Excel.Server.Webservices and Microsoft.Office.Excel.Server namespaces reference documentation.

Excel Calculation Services


The role of Excel Calculation Services is to load workbooks, calculate them, call custom code (user-defined functions) and refresh external data. It also maintains the session state for interactivity. Excel Calculation Services maintains a session for the duration of interactions with the same workbook by a user or caller. A session is closed when the caller explicitly closes it or when the session times out on the server. Excel Services caches the opened Excel workbooks, calculation states, and external data query results, for improved performance when multiple users access the same set of workbooks.

Load-Balancing

In multiple-server configurations, Excel Services load-balances requests across multiple Excel Calculation Services occurrences in a farm configuration. If your installation includes multiple application servers, Excel Services will balance the load to ensure that no single application server is overloaded by request


0 comments: