Capacity planning is an ongoing process. It requires continually
monitoring the use of the servers to ensure that there are
sufficient resources for an optimal user experience. Over time,
most deployments experience a significant growth in both the number
of users and the amount of content stored in the solution.
SharePoint Portal Server 2003 can use multiprocessor servers and
multiserver farms. Administrators can easily enlarge deployments to
address changing requirements by adding hardware resources in any
of the following categories:
- Processors, random access memory (RAM), and storage capacity of
existing servers
- Web servers
- Computers running SQL Server
- Search servers
- Index management servers
Monitoring the system allows you to find possible system
bottlenecks. After remedying a bottleneck, continue monitoring the
process to find the next bottleneck.
CPU Consumption
The most important hardware resource for handling increased load
in SharePoint Portal Server 2003 is CPU capacity.
Adding a New Front-End Server
Since the throughput of most portal site operations is
constrained by the total CPU capacity available on the front-end
server, organizations can benefit by adding extra front-end CPU
capacity to the solution. The following figure illustrates this
point. The throughput results are compared with the total CPU
capacity of the front-end Web servers for each of the portal site
topologies. All topologies used the same SQL back-end server
hardware. The throughput capacity of SharePoint Portal Server 2003
shows a linear increase as CPU capacity is added.

Adding a New Back-End SQL Server
Adding front-end capacity improves the throughput until the
back-end SQL server becomes the limiting factor, as shown in the
following figure.

As you see, the performance gains of adding front-end Web
servers decrease after the addition of the fourth server. The
optimal ratio between front-end CPUs and back-end (SQL) CPUs is
approximately 4:1.
Recommendation
If you plan to add more front-end servers, also add back-end SQL
servers in the same optimal 4:1 proportion.
Adding a New Indexer
Organizations can decrease the time is takes to crawl for
incremental updates and deliver alerts by adding a new indexer to
the solution.
Adding Content
Adding a large number of items to a document library has
performance implications on the content rendering of the document
library.
Adding a large number of documents into a single document
library can also result in a degraded performance on the indexer
that indexes the content, since any modification to an item in a
document library causes re-indexing of that document library.
Adding a Site
The actual number of sites does not affect the performance of
the portal site significantly. You can expect approximately a 5
percent decrease in the common operations throughput for every
50,000 sites. Performance of the Site Directory page on the portal
site is affected since the page showing the directory information
must enumerate through the Site Directory to render its
content.
Adding a Portal Site
The requirements of a full portal site are larger than those of
a site because a number of operations (such as indexing, profile
imports, etc.) are performed on a portal site that are not
performed on a site. Therefore, adding more portal sites increases
the CPU and memory requirements for the solution.
The PCA throughput goes down by approximately 10 percent on a
solution with 50 portal sites running on the same farm.
Disk Consumption
A typical SharePoint Portal Server 2003 solution grows either by
adding new documents or indexes to the existing portal site, or by
adding new sites or portal sites to the solutions.
Adding a New User Profile
Adding a user profile consumes approximately 7 KB on the
database.
Adding Content
Adding content increases the disk space usage on the system. The
increase consists of not only the actual added data, but also the
size of the indexes with the new content.
Recommendation
To improve performance, run appropriate administrative tasks on
both the SQL server databases and the file system to reduce
fragmentation. Also, after importing large amounts of data,
re-index the site database tables. For more information, see the
Microsoft Solution Accelerator for Intranets
Adding a New Content Database
By default, each content database holds 15,000 sites.
Recommendation
Limit the number of SharePoint sites to 50,000 per content
database.
Adding New Sites
Adding new sites has minimal impact on disk consumption. It is
the actual content in the created sites that affects disk
consumption.
Adding a Portal Site
Adding more portal sites to the solution increases the disk
space requirements, since the portal site contains search indexes.
If the server farm is not part of a shared services environment,
the server farm supports up to 15 portal sites. If the server farm
provides or uses shared services, the server farm supports up to
100 portal sites.
Internet Information Services (IIS) limits the number of Web
sites running on one server to 64. For information about how to
increase this number, see the Microsoft Office SharePoint Portal
Server 2003 Administrator's Guide.
Network Consumption
On a 100-MB network, the SharePoint Portal Server 2003 Web
front-end machines usually consume just a small fraction of the
total network capacity.
Peak network consumption in the traffic between servers in a
server farm occurs when the indexed content is propagated to the
search server while indexing and page serving is occurring. The
maximum network utilization encountered in the test labs during
peak throughput performance runs was approximately 30 percent.
Therefore, deploying a farm on a 100-MB-per-second network should
ensure that network contention is not an issue.
Recommendation
Use at least a 100-MB network between servers in a server farm.
Equip the Web servers in a farm with two network cards —one for
user requests and one for SQL Server and search network
traffic.
Memory Consumption
Another key resource in a SharePoint Portal Server 2003
installation is memory. If the solution has insufficient memory
available, its performance deteriorates. The different portal
operations have different memory needs.
Adding an Alert
Adding a search alert consumes approximately 2 KB of memory in
the search process for each search alert, whereas the other alerts
consume approximately 0.5 KB of memory. These numbers must be
multiplied by the number of indexes on the server to determine the
total memory consumption.
Adding Content or Sites
Adding content, new sites, or new portal sites not only consumes
more disk space on the solution, but it also increases memory usage
due to indexing, etc.
Uploading large files consumes memory on the server since the
entire file is loaded into memory before it is stored into the SQL
Server database.
Adding a Portal Site
The memory consumption of 50 portal sites is typically 2 GB; it
grows to 4 GB for 100 portal sites.
Using Shared Services
Most of the cost of shared services is memory consumed by
multiple portal sites.
Table of Boundaries
It is important to understand the ramifications of the different
features and functions of the SharePoint Portal Server solutions to
size the system so that the performance of the system is good. The
following table lists some of the SharePoint Portal Server objects
and describes their recommended use.
"Typical" indicates comfortable and well tested; "maximum"
indicates that the system can support that number, but not without
some performance ramifications or special configurations. An
asterisk (*) indicates a hard limit; no asterisk indicates a tested
or supported limit.
| Object |
Typical |
Maximum |
|
Portal sites (full)
|
2
|
15 *
|
|
Portal sites (child)
|
10
|
100 *
|
|
Areas
|
1,000
|
10,000
|
|
Best Bets
|
1,000
|
25,000
|
|
Area depth
|
5
|
20 *
|
|
User profiles
|
50,000
|
1,000,000
|
|
Audiences
|
500
|
10,000
|
|
Audience memberships
|
500,000
|
5,000,000
|
|
SSO credentials
|
10,000
|
100,000
|
|
Search indexes
|
3
|
32
|
|
Content sources
|
25
|
250
|
|
Search scopes
|
25
|
250 *
|
|
Indexed documents per content index
|
100,000
|
5,000,000
|
|
Indexed documents
|
2,500,000
|
20,000,000
|
|
Thesaurus entries
|
1,000
|
10,000
|
|
Alerts
|
50,000
|
1,000,000
|
|
Team sites
|
10,000
|
250,000
|
|
Personal sites
|
10,000
|
250,000
|