質問
SharePoint 2010のブログは、個々の投稿をレンダリングするときに非常に遅くなることがあります。
通常、時間は次の操作によるものです。
DataBinding DataFormWebPart (Posts[1]) (2654.17 ms)
EnsureListItemsData (133.25 ms)
DataBinding DataFormWebPart (Posts[2]) (2679.60 ms)
EnsureListItemsData (14.23 ms)
DataBinding DataFormWebPart (Comments) (3591.15 ms)
EnsureListItemsData (82.40 ms)
DataBinding DataFormWebPart(Categories) (2604.30 ms)
EnsureListItemsData (14.02 ms)
リストは本当に小さいです、何かアイデアはありますか?
上記のトレースのデータベースクエリは次のとおりです。
proc_FetchDocForHttpGet 30.54 ms
SELECT t10.*, t11.[ntext1], 14.59 ms
proc_GetTpWebMetaDataAndListMetaData 12.74 ms
proc_EnumLists' CommandType: 22.61 ms
proc_GetTpWebMetaDataAndListMetaData 13.40 ms
proc_GetWebMetainfo 10.63 ms
proc_GetListWebParts 11.43 ms
EXEC @wssp0=proc_GetFolderContentTypeOrder 9.24 ms
proc_GetTpWebMetaDataAndListMetaData 13.20 ms
proc_GetTpWebMetaDataAndListMetaData 15.03 ms
proc_GetListMetaDataAndEventReceivers 12.35 ms
proc_GetListMetaDataAndEventReceivers 13.85 ms
SELECT t10.*, t11.[ntext1], 14.17 ms
proc_GetTpWebMetaDataAndListMetaData 13.60 ms
proc_GetListMetaDataAndEventReceivers 11.35 ms
proc_GetListMetaDataAndEventReceivers 12.15 ms
proc_GetListMetaDataAndEventReceivers 13.73 ms
proc_GetListMetaDataAndEventReceivers 11.25 ms
SELECT t10.*, t11.[ntext1], 12.58 ms
DECLARE @DocParentIdForRF 129.13 ms
proc_GetListWebParts 36.04 ms
DECLARE @DN nvarchar(256),@LN 37.49 ms
proc_UpdateWebPartCache 9.52 ms
DECLARE @DocParentIdForRF 11.68 ms
DECLARE @DN nvarchar(256),@LN 26.94 ms
proc_UpdateWebPartCache 12.09 ms
DECLARE @DocParentIdForRF 78.80 ms
DECLARE @DN nvarchar(256),@LN 48.41 ms
proc_UpdateWebPartCache 12.79 ms
DECLARE @DocParentIdForRF 11.13 ms
proc_GetListWebParts 13.34 ms
DECLARE @DN nvarchar(256),@LN 16.94 ms
proc_UpdateWebPartCache 12.07 ms
proc_GetTpWebMetaDataAndListMetaData 13.33 ms
proc_GetTpWebMetaDataAndListMetaData 10.26 ms
proc_GetTpWebMetaDataAndListMetaData 9.67 ms
proc_SecListSiteGroupsContainingUser 8.30 ms
proc_SecListScopeGroups 16.54 ms
proc_SecGetUserPermissionOnGroup 8.49 ms
proc_SecGetUserPermissionOnGroup 7.94 ms
proc_SecGetUserPermissionOnGroup 8.01 ms
proc_SecGetUserPermissionOnGroup 5.55 ms
proc_SecGetUserPermissionOnGroup 4.28 ms
proc_SecGetUserPermissionOnGroup 4.16 ms
proc_SecGetUserPermissionOnGroup 6.14 ms
proc_SecGetUserPermissionOnGroup 8.33 ms
proc_SecGetUserPermissionOnGroup 8.10 ms
dbo.Orgle_GetUserOrgleList 5.71 ms
dbo.Orgle_GetUserOrgleList 5.31 ms
dbo.profile_GetUserGUID 6.03 ms
これがサービスコールです:
ExecuteWcfOperation:http://Microsoft.Office.Server.UserProfiles/GetUserData 20.02 ms
ここにイベントのオフセットがあります:
SPWebPartManager OnLoad +0.00 ms
Posts OnLoad +0.16 ms
Posts OnLoad +0.24 ms
Comments OnLoad +0.30 ms
Categories OnLoad +0.36 ms
New Comment OnLoad +12.87 ms
Archives OnLoad +34.84 ms
Blog Tools OnLoad +34.86 ms
SPWebPartManager OnPreRender +0.00 ms
Posts OnPreRender +2655.80 ms
Posts OnPreRender +5336.52 ms
Comments OnPreRender +8930.95 ms
Categories OnPreRender +11537.97 ms
New Comment OnPreRender +11538.02 ms
Archives OnPreRender +11538.70 ms
Blog Tools OnPreRender +11538.78 ms
解決 2
この問題は、ブログのSharePoint Publishing Web機能を非アクティブ化することで解決されました。ブログと公開Web機能の間には、いくつかの非互換性があるようです。 DataFormWebPartをバインドする実行時間は、〜3秒から〜1msでした。
他のヒント
痛い。
SQLサーバーは非常に遅いようです
何かがSQLサーバーを遅くしていると思います。確かに、その間にすべてのSharePointサイトが遅いことを確認できますか? (ブログだけでなく)
特に、SQLサーバーを深く見てみることをお勧めします。
- 原因かもしれないウイルス対策はありますか?
- 原因となる可能性のあるデータをコピーするために使用されるロボットはありますか?
- ...
SharePoint側では、ログを見て、誰か/何かがサイトに大量のリクエストを行っているかどうかを確認してください。
このSharePoint Publishing Web機能についていくつかの反省がありましたが、公開機能に接続しているようです。
internal void Unprovision()
{
string siteUrl = this.currentWeb.Site.Url;
SPSecurity.RunWithElevatedPrivileges(delegate {
using (VariationSettings settings = VariationSettingsFactory.CreateVariationSettings(siteUrl, true))
{
PublishingWeb pubWeb = PublishingWeb.GetPublishingWeb(this.currentWeb);
SPList relationshipList = settings.GlobalRelationshipList;
VariationsCleanup.RemoveVariationArtifactsForWeb(pubWeb, false, relationshipList, true, true);
}
});
ProvisioningHelper.DeleteListIfEmpty(this.currentWeb, "WorkflowTasks");
ProvisioningHelper.DeleteListIfEmpty(this.currentWeb, "WorkflowHistory");
if (!ProvisioningHelper.DeleteDocLibIfEmpty(this.currentWeb, PublishingWeb.GetPagesListName(this.currentWeb)))
{
ProvisioningHelper.DisableApprovalWorkflowOnSubmit(this.currentWeb, PublishingWeb.GetPagesListName(this.currentWeb), "__PublishingPagesApprovalWorkflowId");
}
if (!ProvisioningHelper.DeleteDocLibIfEmpty(this.currentWeb, "PublishingImages"))
{
ProvisioningHelper.DisableApprovalWorkflowOnSubmit(this.currentWeb, "PublishingImages", "__PublishingImagesApprovalWorkflowId");
}
if (!ProvisioningHelper.DeleteDocLibIfEmpty(this.currentWeb, "Documents"))
{
ProvisioningHelper.DisableApprovalWorkflowOnSubmit(this.currentWeb, "Documents", "__PublishingDocumentsApprovalWorkflowId");
}
PublishingWeb.RemovePublishingWebProperties(this.currentWeb);
}
所属していません sharepoint.stackexchange