限制 Office Web Components 时使用的服务器端

文章翻译 文章翻译
文章编号: 317316 - 查看本文应用于的产品
展开全部 | 关闭全部

概要

在 Microsoft Office Web Components 提供与电子表格、 图表,和数据透视表功能,以使网页更具动态 Web 开发人员。该组件是作为客户端的 ActiveX 控件可以使用 Microsoft Internet Explorer 的内部开发的。

然而,在的组件的功能已导致许多开发人员可以使用它们在服务器端解决方案中如活动服务器页面 (ASP) 或 COM + 中生成并导出图表。虽然这种方式,可以使用该组件,限制可以阻止稳定性和性能的服务器代码,而且可能会使组件大规模的服务器端解决方案中有问题。

更多信息

Microsoft 不建议您在服务器端解决方案中使用该 Office Web Components。几个已知限制将防止组件在高可重入、 多线程、 非交互式的环境中工作正常。您可能会遇到的问题包括以下:
  • 降低执行或较差的性能: 为多个的单线程单元 (STA) 环境,Internet Explorer 的和不多线程的单元 (MTA) 环境的大多数服务器端应用程序设计的 Office 2000 Web 组件。为该 Office Web Components 线程并发保护不是为大量是典型的一个 Web 服务,因此会影响性能的多线程调用而设计的。例如对于该 Office Web Components 保护的共享的内存块使用相同的关键节的数字,因此如果另一个线程修改内存部分中,仍可能阻止不修改内存部分的线程。此外,许多用于处理的功能设计一个单线程模型中的其他 Office 源导入,不能同时运行这些代码段。
  • 内存不足错误: The Office Web Components 使用静态的 Microsoft Office 共享库生成处理内存管理。Microsoft Office 共享库的内存分配功能为客户端侧设计的不希望加载和服务器端解决方案中典型的并发请求。这可能会限制该组件有可供他们无论是在计算机上可用的内存量的内存量。
  • 自动化错误随机时间: The Office Web Components 使用完全不保护的几个状态变量和函数运行时,将更改该变量,如果它们可能会导致意外失败函数。异步处理 (如一个数据源中请求数据或计算电子表格中单元格的值) 需要的函数是更有可能生成多个线程在同时自动执行此类错误。
  • 线程死锁: 在某些的情况下该 Office Web Components 可能会遇到导致无限期等待状态或 $ 全局异常可以孤立线程并导致资源损失的争用条件。当组件被"紧张"时,通常会出现这些情况下,例如对于时,可能会出现这种情况了大量的客户端进行到在的服务器的并发请求和每个请求创建、 自动化,或销毁它自己的组件实例。池实例可以最大限度地减少死锁风险。
  • multi-Thread 争用: 如果创建单独 Office Web Components 中的分隔单线程单元 (STA) 内一个单独的进程和线程同时运行,您可能会遇到性能有损失或线程争用问题,这可能会导致高 CPU 使用情况或状态损坏。建议您在同一 STA 中中, 保留所有实例,或如果您需要 parellel 执行,创建单独的进程所需的每个 STA 线程的宿主。
在上面列出的 Office Web Components 问题是与他们预期一致的限制使用客户端 ActiveX 控件的设计。没有替代方法或修补程序仅供这些 Office Web Components 限制。

虽然您可以运行 Office Web Components 服务器端,并为小的 Web 站点,此操作有效,但这些问题可能阻止您扩展到句柄一个大型网站,并在具有大量的通信量的解决方案。如果您计划一个新的解决方案,仔细考虑自己比例要求并决定是否将 Office Web Components 适合以满足需求。如果您需要一个更具伸缩性的解决方案,有许多第三方产品可以执行类似的操作,专为服务器端操作设计的。这些第三方产品可能会更好地适合您的要求。

如果您当前正在使用服务器端 Web 解决方案中的该 Office Web Components,请考虑升级到最新版本的 Office Web Components。 一些内存错误问题和自动化错误问题已被解决的 Office Web Components 的较新版本中。但是,作为 ActiveX 控件 Office Web Components 的设计不会使它们对于较大的比例 Web 项目完全可靠如果组件运行服务器端。

参考

若要下载最新版本的该 Office Web Components,请参阅以下 Office Web 站点:
http://www.microsoft.com/downloads/details.aspx?familyid=7287252C-402E-4F72-97A5-E0FD290D4B76
有关情况下,开发人员可能希望使用 Office Web Components 服务器端的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
286278如何创建一个交互式 Office XP 图表服务器端使用 ASP
294798如何使用 ASP 创建一个 Office XP 数据透视表,并以 html 格式显示结果

属性

文章编号: 317316 - 最后修改: 2006年1月31日 - 修订: 5.2
这篇文章中的信息适用于:
  • Microsoft Office 2003 Web Components
  • Microsoft Office XP Web Components
  • Microsoft Office Chart Component 9.0
  • Microsoft Office Spreadsheet Component 9.0
  • Microsoft Office PivotTable Component 9.0
关键字:?
kbmt kbdownload kbinfo kbofficewebchart kbofficewebpivot kbofficewebspread KB317316 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 317316
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com