Tuesday, May 1, 2007

MOSS 2007 Guidelines for Performance optimization and Capacity Planning

MOSS 2007 has some limitations in terms of performance. These limitations and guidelines have to be followed in order to maximize MOSS performance and for avoiding any unpredictable behaviors or supportability issues.

Following are the details of performance guidelines along with their objects affected. This information will be handy for MOSS capacity planning and architecture design and also for checking product supportability.

The following table lists the recommended guidelines for site objects.

Site object

Guidelines for acceptable performance

Notes

Scope of impact when performance degrades

Site collection

50,000 per content database

Total farm throughput degrades as the number of site collections increases.

Farm

Site collection

150,000 per Web application

This limit is theoretical, and is dependent largely upon:

· Performance of the database server on which the configuration database resides.

· Performance of the Web servers in the farm.

· Network bandwidth between the Web servers and the database server.

This is not a hard limit, and assumes a single database server. Your environment may not be able to host this many site collections per Web application. Distributing content databases across additional database servers can increase the effective limit of the number of site collections per Web application. You should perform testing to determine the actual effective limit in your environment.

Farm

Web site

250,000 per site collection

You can create a very large total number of Web sites by nesting the subsites. For example, 100 sites, each with 1000 subsites, is 100,000 Web sites. The maximum recommended number of sites and subsites is 125 sites with 2,000 subsites each, for a total of 250,000 sites.

Site collection

Subsite

2,000 per Web site

The interface for enumerating subsites of a given Web site does not perform well as the number of subsites surpasses 2,000.

Site view

Document

5 million per library

You can create very large document libraries by nesting folders, using standard views and site hierarchy. This value may vary depending on how documents and folders are organized, and by the type and size of documents stored.

Library

Item

2,000 per view

Testing indicates a reduction in performance beyond two thousand items. Using indexing on a flat folder view can improve performance.

List view

Document file size

50MB (2GB max*)

File save performance is proportional to the size of the file. The default maximum is 50 MB. This maximum is enforced by the system, but you can change it to any value up to 2 GB.

Library, file save performance

List

2,000 per Web site

Testing indicates a reduction in list view performance beyond two thousand entries. For more information about large lists, see White paper: Working with large lists in Office SharePoint Server 2007 [ http://technet.microsoft.com/en-us/library/cc262813.aspx ] .

List view

Field type

256 per list

This is not a hard limit, but you might experience list view performance degradation as the number of field types in a list increases.

List view

Column

2,000 per document library

4,096 per list

This is not a hard limit, but you might experience library and list view performance degradation as the number of columns in a document library or list increases.

Library and list view

Web Part

50 per page

This figure is an estimate based on simple Web Parts. The complexity of the Web Parts dictates how many Web Parts can be used on a page before performance is affected.

Page

Managed path

20 per Web application

20 managed paths is a soft limit. Managed paths are cached on the Web server, and CPU resources are used to process incoming requests against the managed path list. You should test for performance before exceeding 20 managed paths in a single Web application.

Web application

The following table lists the recommended guidelines for people objects.

People object

Guidelines for acceptable performance

Notes

Users in groups

2 million per Web site

You can add millions of people to your Web site by using Microsoft Windows security groups to manage security instead of using individual users.

User profile

5 million per farm

This number represents the number of profiles which can be imported from a directory service, such as Active Directory, into the people profile store.

Security principal

Approximately 2,000 per ACL (Access Control List) on any securable object (scope)

The total size of the ACL on scopes can be no larger than 64kb. Because each security principal is approximately 32 bytes in size, there can be no more than approximately 2,000 security principals or less for each scope.  If this limit is reached, indexing of items in that scope, and all items below that scope, to fail.

Also, because SharePoint Groups are expanded during the indexing process, having more than 2,000 users or Directory Groups in a SharePoint group and using that group for securing scopes may cause indexing of items secured with these groups, and all items below them, to fail.

This limit only occurs when Windows Integrated Authentication is utilized.

The following table lists the recommended guidelines for search objects.

Search object

Guidelines for acceptable performance

Notes

Search indexes

One per SSP

Maximum of 20 per farm

Office SharePoint Server 2007 supports one content index per SSP. Given that we recommend a maximum of 20 SSPs per farm, a maximum of 20 content indexes is supported.

Note that an SSP can be associated with only one index server and one content index. However, an index server can be associated with multiple SSPs and have a content index for each SSP.

Indexed documents

50,000,000 per content index

Office SharePoint Server 2007 supports 50 million documents per index server. This could be divided up into multiple content indexes based on the number of SSPs associated with an index server.

Content sources

500 per SSP*

This is a hard limit enforced by the system.

Start Addresses

500 per content source*

This is a hard limit enforced by the system.

Alerts

1,000,000 per SSP

This is the tested limit.

Scopes

200 per site

This is a recommended limit per site. We recommend a maximum of 100 scope rules per scope.

Display groups

25 per site

These are used for a grouped display of scopes through the user interface.

Crawl rules

10,000 per SSP

We recommend a maximum 10,000 crawl rules irrespective of type.

Keywords

15,000 per site

We recommend a maximum of 10 Best Bets and five synonyms per keyword.

Crawled properties

500,000 per SSP

These are properties that are discovered during a crawl.

Managed properties

100,000 per SSP

These are properties used by the search system in queries. Crawled properties are mapped to managed properties. We recommend a maximum of 100 mappings per managed property.

Authoritative pages

200 per relevance level

This is the maximum number of sites in each of the four relevance levels.

Results removal

100

This is the maximum recommended number of URLs that should be removed from the system in one operation.

Crawl logs

50,000,000

Number of individual log entries in the crawl log.

The following table lists the recommended guidelines for logical architecture objects.

Logical architecture object

Guidelines for acceptable performance

Notes

Shared Services Provider (SSP)

3 per farm (20 per farm maximum)

 

Zone

5* per farm

The number of zones defined for a farm is hard coded to 5.

Web application

99 per SSP

This limit includes the number of Web applications on child farms consuming resources on this SSP.

Internet Information Services (IIS) application pool

8 per Web server

Maximum number is determined by hardware capabilities.

Site collection

50,000 per Web application

 

Content database

100 per Web application

 

Site collection

50,000 per database

 

The following table lists the recommended guidelines for physical objects.

Physical object

Guidelines for acceptable performance

Notes

Index servers

1 per SSP*

 

Application servers running Excel Calculation Services

No limit

 

Query servers

No limit

Because 100 content databases are supported for each query server, the number of query servers required per farm is based on the number of content databases in the farm. For example, if there are 500 content databases in your farm, you will need at least 5 query servers.

Web server/database server ratio

8 Web servers per database server

The scale out factor is dependent upon the mix of operations.

Web server/domain controller ratio

3 Web servers per domain controller

Depending on how much authentication traffic is generated, your environment may support a greater number of Web servers per domain controller.

*Source Microsoft TechNet

5 comments:

JC said...

The information is useful. Thanks for providing here. Have a question, what is the maximum number of web application per web server (IIS) for MOSS?

Anonymous said...

Hi Khurram,

This Post is useful.Currently no. of webparts in a page is limited to 50. If I wanted to increase this limit, how can I do it.?

Please reply at the earliest.

Thanks in Advance,
Amby

Khurram Ullah Khan said...

Hi Amby,

The figure mentioned in my article is little bit old and was referenced from Microsoft site. Apparently Microsoft has changed this limit to 50 from 100. regarding your question to adding more then 50 webparts, its totally depend on the types of webparts you are planning for adding, the configuration of the server and the no of user hits on this page. It is however not recommended to add more webparts more then the said limit. If you can give me some more details about your environment and the type of webparts you are planning for adding, then i can recommend you some alternative.

regards,
Khurram.

Cigal Naftali said...

thanx for the useful info. DO you know if the 2000 items per list are also true for blog site posts and comments lists?

Morten said...

i have a question..

If i have an libary with approx. 19000 items ... can i then go around the view limit of 2000 with making the allitems view limited to 10 items and also use indexing.