SharePoint 2010沙盒解决方案超时

时间:2011-04-19 20:31:15

标签: sharepoint-2010 sandbox-solution

有没有办法调整SharePoint 2010沙箱解决方案的超时值?我认为默认为30秒。我有一个网页部分,偶尔会运行一段时间。如果可以避免的话,我真的不想回到农场解决方案。

2 个答案:

答案 0 :(得分:8)

查找有关此文档的文档有点困难,但我发现它here。相关部分如下:

  

每个请求,请求被惩罚:沙盒解决方案需要多长时间才能完成。默认情况下,这是30秒。如果沙盒解决方案超出限制,则终止处理请求(但不是沙盒工作进程)的应用程序域。此限制是可配置的,但只能通过针对对象模型的自定义代码。沙盒解决方案无法访问对象模型的相关部分,因此沙盒解决方案无法更改限制。

     

CPU执行时间此资源的绝对限制不适用,只要它设置为高于每个请求,并具有上述请求惩罚限制。通常,管理员希望保持较高的速度,以便在导致整个沙盒工作进程终止之前终止慢速请求,包括在其中运行的行为良好的沙盒解决方案。

以下代码可用于调整每请求超时:

SPUserCodeService.Local.WorkerProcessExecutionTimeout = 40;
SPUserCodeService.Local.Update();

您应该可以使用以下内容调整CPU执行时间:

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

您必须重新启动Microsoft SharePoint Foundation沙盒代码服务才能使更改生效。

答案 1 :(得分:0)

在PowerShell中,您可以使用以下命令调整超时:

$uc=[Microsoft.SharePoint.Administration.SPUserCodeService]::Local
$uc.WorkerProcessExecutionTimeout = 60
$uc.ResourceMeasures["CPUExecutionTime"].AbsoluteLimit = 120
$uc.Update()