sharepoint-2010 sandbox-solution

Tiempo de espera de la solución Sandbox de SharePoint 2010



sharepoint-2010 sandbox-solution (2)

Encontrar la documentación sobre esto fue un poco difícil, pero lo encontré aquí . Las partes relevantes son estas:

Por solicitud, con la solicitud penalizada : existe un límite estricto de cuánto puede tardar una solución de espacio aislado en completarse. Por defecto, esto es 30 segundos. Si una solución de espacio aislado excede el límite, el dominio de aplicación que maneja la solicitud (pero no el proceso de trabajo en espacio aislado) finaliza. Este límite es configurable, pero solo a través del código personalizado contra el modelo de objetos. A las partes relevantes del modelo de objetos no se puede acceder mediante soluciones de espacio aislado, por lo que ninguna solución de espacio aislado puede cambiar el límite.

Tiempo de ejecución de la CPU El límite absoluto de este recurso no es aplicable siempre que esté establecido por encima de Per Request, con el límite Solicitar Penalización descrito anteriormente. Normalmente, los administradores querrán mantenerlo más alto para que la solicitud lenta finalice antes de que provoque la finalización de todo el proceso de trabajo aislado, incluidas incluso las soluciones de espacio aislado que se ejecutan en él.

El siguiente código se puede usar para ajustar el tiempo de espera por solicitud:

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

Debería poder ajustar el tiempo de ejecución de la CPU con algo como lo siguiente:

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

Debe reiniciar el Servicio de código de espacio aislado de Microsoft SharePoint Foundation para que los cambios surtan efecto.

¿Hay alguna forma de ajustar el valor de tiempo de espera para una solución de espacio aislado de SharePoint 2010? Creo que por defecto es 30 segundos. Tengo un elemento web que de vez en cuando se ejecuta un poco más que eso. Realmente preferiría no recurrir a una solución de granja si puedo evitarla.


En PowerShell, puede ajustar los tiempos de espera utilizando los siguientes comandos:

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