SharePoint 2010 沙盒解决方案超时问题

4
有没有办法调整SharePoint 2010沙盒解决方案的超时值?我认为默认值为30秒。我的网页部件偶尔运行时间略长于此。如果可以避免,我真的不想退回到农场解决方案。
2个回答

9
这个问题的文档不太好找,但我在这里找到了:链接。相关部分如下:

按请求计算的超时时间:沙盒解决方案完成的时间有一个硬性限制,默认为30秒。如果沙盒解决方案超过限制,处理请求的应用程序域(但不包括沙盒工作进程)将被终止。此限制可配置,但仅通过针对对象模型的自定义代码进行。沙盒解决方案无法访问对象模型的相关部分,因此不能更改限制。

CPU执行时间:只要它高于上述“按请求计算的超时时间”,则该资源的绝对限制不适用。通常,管理员希望将其保持较高,以便在导致整个沙盒工作进程终止之前终止慢速请求,包括其中运行的良好的沙盒解决方案。

以下代码可用于调整按请求计算的超时时间:
SPUserCodeService.Local.WorkerProcessExecutionTimeout = 40;
SPUserCodeService.Local.Update();

您应该能够通过以下方式调整CPU执行时间:

SPUserCodeService.Local.ResourceMeasures["CPUExecutionTime"].AbsoluteLimit = 50.0;
SPUserCodeService.Local.Update();

为使更改生效,您需要重新启动Microsoft SharePoint Foundation沙盒代码服务。


0
在PowerShell中,您可以使用以下命令调整超时时间:
$uc=[Microsoft.SharePoint.Administration.SPUserCodeService]::Local
$uc.WorkerProcessExecutionTimeout = 60
$uc.ResourceMeasures["CPUExecutionTime"].AbsoluteLimit = 120
$uc.Update()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接