• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Consider performance and security for SharePoint WP/App
 

Consider performance and security for SharePoint WP/App

on

  • 475 views

Consider performance and security for SharePoint WP/App, apply to SharePoint 2010, 2013...

Consider performance and security for SharePoint WP/App, apply to SharePoint 2010, 2013...

Statistics

Views

Total Views
475
Views on SlideShare
474
Embed Views
1

Actions

Likes
1
Downloads
5
Comments
0

1 Embed 1

https://www.facebook.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Consider performance and security for SharePoint WP/App Consider performance and security for SharePoint WP/App Presentation Transcript

    • Take SharePoint® to new heights.Consider performance & Security forSharePoint© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.About Author: Nguyen Tuan Hai Team Lead at Bamboo Solutions Blog: http://tuan-tomy.blogspot.com Twitter: @tuantomy Linked: #nsuthaibanhxeo2© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.Getting Start3© 2013 Bamboo Solutions CorporationAll Rights ReservedRoll-up data from many sourcesProcess on large number of items
    • Take SharePoint® to new heights.Contents Define performance and security issue in project Solutions Tools to monitor life-cycle and logging Demo Q&A4© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.DefineHeavy load page• Product: web part, applicationpage, custom action…• Configuration: stand-alone, smallfarm, scaled farm, large farm…• Network: LAN, remote…• System: IIS, SQL Server5© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.DefineProduct• Bottle-neck (code)• Large list• Dispose• Application pool6© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.DefineConfiguration• Best practice installation• Load balancing• Services• Cache: disk-based BLOBcaching, output cache, bit ratethrottling7© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.DefineNetwork• Hardware installation• Local Area Network• Distributed database8© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.DefineSystem• Recycle application pool• Indexing configuration on database• Double-hop of SQL Server9© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.DefineSecurity• Code: Cross-site scripting, querystring, injection, validationpage, permission per user…• Service accounts10© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.SolutionsIndicate the number of artifactsScope/narrow down objects11© 2013 Bamboo Solutions CorporationAll Rights ReservedWeb PartsWP PageMedia LibraryPlain ContentRequestServer
    • Take SharePoint® to new heights.SolutionsWebPart12© 2013 Bamboo Solutions CorporationAll Rights ReservedRequestWeb partBottle-neckServerWeb part ListSPApplicationTimer JobServerRoll-up data
    • Take SharePoint® to new heights.SolutionsBLOB and Caching13© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.SolutionsQuery on large list14© 2013 Bamboo Solutions CorporationAll Rights ReservedSPQuery query = new SPQuery();query.RowLimit = 2000;query.ViewFields = “CAML_Query”;SPListItemCollection collection;do{collection = list.GetItems(query);//Processing dataquery.ListItemCollectionPosition =collection.ListItemCollectionPosition;} while (query.ListItemCollectionPosition != null);
    • Take SharePoint® to new heights.SolutionsCache SharePoint objectsLoop statement15© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.SolutionsBest practice installationManage service accounts16© 2013 Bamboo Solutions CorporationAll Rights Reserved
    • Take SharePoint® to new heights.SolutionsCheck user permissions appropriately17© 2013 Bamboo Solutions CorporationAll Rights ReservedSPSecurity.RunWithElevatedPrivileges(delegate(){//TODO: Your Code Here});try{list.CheckPermissions(SPBasePermissions.ApproveItems);}catch (UnauthorizedAccessException ex){//Throw exception here}
    • Take SharePoint® to new heights.Tools18© 2013 Bamboo Solutions CorporationAll Rights Reserved MSOCAF• Test cases
    • Take SharePoint® to new heights.Tools19© 2013 Bamboo Solutions CorporationAll Rights Reserved MSOCAF• Report resultDownload: https://caf.sharepoint.microsoftonline.com/
    • Take SharePoint® to new heights.Tools20© 2013 Bamboo Solutions CorporationAll Rights Reserved Developer dashboard• New feature of SharePoint 2010
    • Take SharePoint® to new heights.Tools21© 2013 Bamboo Solutions CorporationAll Rights Reserved Developer dashboard• Turn on developer dashboard running on demand$service = [Microsoft.SharePoint.Administration.SPWebService]::ContentService$addsetting =$service.DeveloperDashboardSettings$addsetting.DisplayLevel =[Microsoft.SharePoint.Administration.SPDeveloperDashboardLevel]::OnDemand$addsetting.Update()• Turn on developer dashboard• Turn off developer dashboard$service = [Microsoft.SharePoint.Administration.SPWebService]::ContentService$addsetting =$service.DeveloperDashboardSettings$addsetting.DisplayLevel =[Microsoft.SharePoint.Administration.SPDeveloperDashboardLevel]::On$addsetting.Update()$service = [Microsoft.SharePoint.Administration.SPWebService]::ContentService$addsetting =$service.DeveloperDashboardSettings$addsetting.DisplayLevel =[Microsoft.SharePoint.Administration.SPDeveloperDashboardLevel]::Off$addsetting.Update()
    • Take SharePoint® to new heights.Demo22© 2013 Bamboo Solutions CorporationAll Rights Reserved• Dispose SharePoint Objects• Retrieve data from large list• Use MSOCAF to check the code
    • Take SharePoint® to new heights.References References:• http://msdn.microsoft.com/en-us/library/gg552614(v=office.14).aspx• http://www.alachisoft.com/storageedge/sharepoint-performance-scalability.html• http://bestofcyber.wordpress.com/2008/10/16/best-coding-techniques-to-improve-performance-for-sharepoint-applications/• http://technet.microsoft.com/en-us/magazine/2009.08.insidesharepoint.aspx• http://blogs.msdn.com/b/sowmyancs/archive/2008/10/26/best-practices-sharepoint-object-model-for-performance-tuning.aspx Thank you!23© 2013 Bamboo Solutions CorporationAll Rights Reserved