簡體   English   中英

Sharepoint工作流程性能問題

[英]Sharepoint workflow performance Issue

我沒有Sharepoint開發方面的經驗,因此要求我查看工作流程的性能。 經過一些跟蹤,我發現哪個部分執行花費太多時間:

using (var site = new SPSite(WorkflowWeb.Site.ID, workflowProperties.OriginatorUser.UserToken))
        {
            using (var web = site.OpenWeb(WorkflowWeb.ServerRelativeUrl))
            {
                var list = web.Lists[WorkflowItem.ParentList.ID];
                var item = list.Items[WorkflowItem.UniqueId];


                item[new Guid("{54GH32R2-HG66-654a-KKKK-456FFF864654}")] = SPUtility.GetLocalizedString("$Resources:Assigned_Car", "RealB", WorkflowWeb.Language);
                item[new Guid("{54FG6215-9584-123g-KJHG-456FFF864654}")] = DateTime.Now;
                item.Update();
            }
        }

這部分大約需要5分鍾才能執行。 有什么技巧可以改善性能嗎?

正如我提到的那樣,我沒有SP經驗,對工作流程的工作也不了解,我只需要快速而輕松地解決它。

在正常情況下,所提供的代碼段無需花費5分鍾即可執行。 就執行而言,即使需要打開以前未緩存的SPSite ,執行此代碼也SPSite不到一秒的時間。

什么需要長達5分鍾的SharePoint 2010的默認配置owstimer (工作流執行異步的過程)是工作流引擎調用這反過來執行工作流程之間的延遲。 根據您對工作流的“性能”(“運行時間”是一個更好的術語)的衡量方式,此空閑時間可能會包含在您的結果中。


邊注:

我沒有SP經驗,對工作流程的工作也不了解,我只需要快速又輕松地解決它。

然后,在基本學習任務之外再使用SharePoint是一個非常糟糕的主意。 性能調優和故障排除絕對適合完全缺乏該平台知識和經驗的人使用。 SharePoint是一個非常復雜的平台,有時其行為遠非那么簡單。 您應該學習和獲得SharePoint方面的經驗,而這要簡單得多。

現在可以通過更改來更快:

var item = list.Items[WorkflowItem.UniqueId];

var item = list.GetItemByUniqueId(WorkflowItem.UniqueId);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM