【问题标题】:Performance Issue with OPENXML SDK to read & writeOPENXML SDK 读写的性能问题
【发布时间】:2012-11-05 06:28:41
【问题描述】:

根据我的客户要求,我们正在用OPENXML SDK代替ASPOSE技术来读写Excel 2007(.xlsm宏文件),实际上我们可以使用openxml sdk来完成这项工作。

但是当我们比较执行时间时问题就开始了,如果数据太大(reprting data for eg 18k)无法读取或写入,ASPOSE与OPEN XML SDK相比太快了。

我们采用下面链接中给出的以下方法,它工作得很好,但真正的问题是执行时间太长了,在此期间我们失去了 trasaction 超时。

http://msdn.microsoft.com/en-us/library/office/hh180830.aspx

如果 OPENXML SDK 未能在比 ASPOSE 更短的时间内交付结果,那么只有 OPENXML SDK 才会被接受,否则我们寻找和编写开放式 xml sdk 代码的努力是徒劳的。

基本上,我们正在使用上述任何技术在数据集中获取整个海量数据并写入。

任何有助于提高编码方面的性能的帮助都将受到高度评价。

【问题讨论】:

    标签: sdk openxml-sdk


    【解决方案1】:

    问题是工作集之一,而不是 IO 时间之一。分配过多的内存会减慢您的应用程序速度,而不仅仅是任何其他因素。最好使用流式方法。前段时间,我录制了一个使用流式传输方法的屏幕录像 - 它以每秒 10,000 行左右的速度生成工作表(对于具有 20 列数据的行)。这接近 IO 限制,因此很难加快速度。您需要使用更快的磁盘。

    您可以在此处找到截屏视频和示例代码:

    http://openxmldeveloper.org/blog/b/openxmldeveloper/archive/2012/01/10/screen-cast-using-open-xml-and-linq-to-xml-in-a-streaming-fashion-to-create-huge-spreadsheets.aspx

    -埃里克

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-30
    • 2019-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-28
    • 2011-07-22
    相关资源
    最近更新 更多