我们有大的zip文件(500MB到5GB),这是处理自定义sharepoint作业。当作业执行时SPFile.OpenBinary()被触发,并在sharepoint web服务器日志中记录SQL Server超时异常。SQL server和sharepoint在同一台机器上。我可以使用sharepoint web界面下载和上传文件
用SPFile.OpenBinaryStream
代替
这是一个非常坏的主意读取一个多gb的文件到单个byte[]
,这正是SPFile.OpenBinary
所做的。此外,当你在SharePoint中处理如此大量的数据时,你应该考虑两件事:
- 重新考虑你的IT基础设施,至少让SQL Server在自己的机器上运行;
- 考虑使用RBS从SharePoint中卸载文档blob(这绝对不仅仅是配置问题,适当的许可和第三方产品对于生产环境是必须的)。