23

My problem solved! Have a follow this link. Turn off distributed cache: Site loading time with it off: site loading time with it on: !!! From 6.10 seconds down to 79 ms


17

You should reduce it, and your farm will get benefit from it. Their is no impact rather you will get performance improvement. NodeRunner.exe is resource hungry process. their 3 step process: Use Set-SPEnterpriseSearchService -PerformanceLevel Reduced to reduce the CPU impact the search service Modify the C:\Program Files\Microsoft Office Servers\15.0\...


11

SPWeb.Lists.TryGetList is probably what you're looking for. So in your example: logList = site.RootWeb.Lists.TryGetList("Log Records");


11

by default the level is set to maximum when you install the sharepoint search service, Thats because on a live service you expect it to be fast with optimum hardware to support it with the correct topology to break the load from the search service! setting it to reduced is the correct way go about it: on dev machine: Set-SPEnterpriseSearchService -...


11

Generally speaking you will want to use SPQuery to only query items you're interested in. Unless you're doing SPList oList = web.GetList("XYZ"); for(int i=0; i < oList.Items.Count; i++) { string strLstItemName = oList.Items[i].Name; // << BAD, as you use Items here, so you fetch them from DB each loop } there shouldn't be any relevant ...


9

Depending on your content, that could be a very normal amount of RAM being used so I wouldnt worry about that. The very first thing to find out is what is using that much CPU, so pull up Task Manager on the server, go to Processes then check the button/box at the bottom to show all processes from all users. Click on the CPU column and look for the big ...


9

You're within the limitations of SharePoint (http://technet.microsoft.com/en-us/library/cc262787.aspx) in either scenario, which is good. Some of my thoughts As far as performance, I don't think you'll see much in way of improvement going from one DB to multiple DBs, unless you can move the DB files to different disk arrays. 100GB is a reasonable size for ...


9

Since you haven't specified what error occurs, below is demonstrated how to load multiple list items by their ids: var listTitle = 'Tasks'; //list title var ids = [1,2,3]; //item ids var ctx = SP.ClientContext.get_current(); var web = ctx.get_web(); var list = web.get_lists().getByTitle(listTitle); var result = []; //for storing items ids.forEach(...


8

There's two very simple ways: Use the Developer Dashboard feature in SharePoint 2010 - it allows you to see where the server spends time rendering your page Use the IE9 Network profiler (F12 in IE9 and the Network profiler tab)


8

The various property bags are backed by Hashtable objects, except for SPWeb.Properties which is a StringDictionary (essentially a strongly-typed, non-generic Hashtable). SPWeb.AllProperties is a Hashtable and is prefered to AllProperties (it also does not force lowercase key values). The performance of all these containers is excellent (see for example here)...


8

For driving SP 2013 with only 12 GB of RAM I recommend that you stop the search from doing continous crawls, and to stop any services that you do not plan to use. Otherwise you will ned a bit more memory. The search continous crawl uses a massive amount of system resources, so in a low performance environment, it should be turned of if it is not extremely ...


7

A few things in addition to the tips in Mike's link: If this is a publishing site, you might look into enabling output caching For all sites, enabling BLOB Caching can help performance Change the full and incremental crawls of your search to only run off hours. I've seen places that re-indexed all content every 10 minutes and then wondered why the site was ...


7

WHAT I PRESUME 1) you are working with custom js code 2) you are working with a custom page SOLUTION 1) don't use ScriptLink : If you register a .js file by adding a ScriptLink control to an .aspx page, the control registers all .js dependencies. To import the various "SP" namespaces, such as those listed at ECMAScript Object Model Reference, you must ...


6

Leading on from @tylerrrr07's answer, there's another overload of GetItemsWithUniquePermissions which may be of use to you: MSDN: SPList.GetItemsWithUniquePermissions Method (int maxItemToReturn, bool folderOnly) You could then avoid the potentially huge result set from running the method by using the following: SPList.GetItemsWithUniquePermissions(1, ...


6

SSD will bring you outstanding improvements. Your cpu & amount of ram are already excellent so going to a flash memory drive will allow the machine to free itself. On the other side, you can optimize SQL Server (check out the recovery model, auto growth settings, etc.), Windows Server 2008 R2 (turn off everything uneeded) and SP as well (turn all ...


6

Problem solved and it was a very strange one (or maybe not). There is custom IHttpModule deployed that handles auditing view on list items. Client wanted to log everything so custom module was developed and deployed. Something like this: Sharepoint (WSS/MOSS) Auditing VIEW On List Items But if you read my question again you will see that there was problem ...


6

For me, reprovisioning the distributed cache service resolved the performance issue: $serviceInstance. = Get-SPServiceInstance | Where { $_.TypeName -like "Distributed Cache"} $serviceInstance.Unprovision() $serviceInstance.Provision()


6

I'd guess the culprit would be: SPFile file = web.Files[0]; This will load the entire collection into memory, even though you are only after a specific file. Use SPWeb.GetFile() instead. Edit Additionally, SharePoint 2007 and WSS 3.0 Dispose Patterns by Example provides an example of using the SPLimitedWebPartManager, that requires an explicit Dispose() ...


5

There's no magic way to speed up a crammed memory pool filled with maxed out working sets. The only way you're going to see performance improvements is to turn off the stuff you wont' be demonstrating. If you insist of showing off everything, do multiple sessions where you only show one feature/component at a time.


5

Have you tried Fiddler? I think it would serve your purposes really well. http://www.getfiddler.com You could also enable the SharePoint Developer Dashboard to see loadtimes etc on a page. To enable it see use: $service = [Microsoft.SharePoint.Administration.SPWebService]::ContentService $addsetting =$service.DeveloperDashboardSettings $addsetting....


5

Alex, Please verify and check the following sections: System Settings > Manage Services on Server Ensure that "Web Analytics Data Processing Service" and "Web Analytics Web Service" is running Monitoring > Review Job Definitions Change the service to "Microsoft SharePoint Foundation Usage" Make sure the "Microsoft SharePoint Foundation Usage Data ...


5

+1 for the SSD. A single hard drive (I hope it's 7200rpm) will be the bottleneck of your system. If you launch resource monitor, I bet you will often have I/O queue. 14Gb of RAM is large enough. I've run with 8GB most of time, with no specific lag, when the I/O system is performant. Especially, I ran the dev box on a small virtual server, with some RAID 0 ...


5

There is absolutely no performanve improvement by using the lists.asmx web service over using CAML directly. lists.asmx is just receiving your CAML passing it on to the SharePoint object model, format the result as XML. Sending request/response over the network (even internal on the server) and formatting SOAP messages isn't going to speed up things when ...


5

SPWakeup WSS3.0/2007 - http://spwakeup.codeplex.com/ SharePoint 2010/2013 - https://spbestwarmup.codeplex.com/ SharePoint 2013 - http://www.toddklindt.com/blog/Lists/Posts/Post.aspx?ID=404 I've always used it every morning, right after resetting IIS. Just schedule a task scheduler to reset IIS, and then another task scheduler to run this script 2 minutes ...


5

A different way to doing this is to use retention policies. You can get them to run off a given date field as well as set it to X days/months/years. No need to pause workflows as you simply run the workflows when needed. Retention should be under settings for the library/list. (Please note that I use SP2013 but it should work in SP2010 as well: http://...


4

Browsing to a site for the first time after the underlying IIS App Pool is recycled is extremely slow. To solve this, you can run a wakeup (aka: warmup) script that simulates hitting your SharePoint sites (there are a couple of free scripts posted by developers that you can search for). Schedule the script to run soon after a scheduled IIS recycle. For ...


4

We were having this same issue, though with a different service, search instead of managed metadata. The load frequently took 15 seconds. This KB article had the fix for us: http://support.microsoft.com/kb/2625048 . SharePoint 2010 uses SSL to encrypt intra-farm communication. It should work invisibly, but under the right conditions, it can cause problems, ...


4

That is because the operations you mentioned are all performed the exact same way as with smaller lists. My take is: Always use SPQuery (single list query) or SPSiteDataQuery (along with CrossListQueryCache) for cross-list query (in the same site collection) or CoreSearchResults (or KeywordQuery for direct call) to get across Site Collections. Use the same ...


4

You might also take into account that the initially required storage capacity will grow over time. Having to split your "catch-all" SiteCollection later on won't be fun, so my recommendation is to start with several SiteCollections and have room for growth


Only top voted, non community-wiki answers of a minimum length are eligible