我正在计划一些计算量很大的报告,我认为最好转移到加载到Microsoft SQL Server的自定义.NET程序集.使用它的公司将只使用SQL Server Enterprise版本,因此功能支持没有问题.
问题是:
这真的是个好主意吗?
我想导出此功能,因为我希望能够使用以下功能:
>多线程(线程数量将是处理实体之间的最小值,以及配置文件中设置的最大数量.我不知道我应该指定的任何其他上限.)
>非托管代码(用于流处理的C库)
>有时甚至是COM Interop或shell命令,尽管这种可能性较小.
他们会工作得很好吗?在我的情况下,我应该知道有任何限制吗?
最佳答案 您列出的所有内容都有可能存在一些限制.主机保护属性允许访问创建线程,但禁止访问Thread.Join等.在
msdn上阅读有关它的更多信息
现在的问题是“你应该这样做吗?”我认为这种方法不是很合理,因为它会给你的数据库服务器带来很大的处理负担,如果需要的话很难扩展.我认为更好的方法是将自定义程序集添加到SQL Server Reporting Services并让处理在那里进行.如果遇到可伸缩性问题,可以添加其他报告服务计算机.
方法和方法也没有限制. Reporting Services中加载的程序集中的类.