Sharepoint isn't the speediest of server applications, and I've read about a few tips to speed it up. What steps do you think are necessary to increase performance so it can be used to host a high traffic site?
Sharepoint不是最快的服务器应用程序,我已经阅读了一些提示来加快它的速度。您认为哪些步骤可以提高性能,因此可用于托管高流量站点?
4 个解决方案
#1
8
At the end of the day SharePoint is just a complicated web site with all the standard components.
在一天结束时,SharePoint只是一个包含所有标准组件的复杂网站。
In order to optimize performance you need to analyze each component and determine which one is a problem, and then adjust it accordingly.
为了优化性能,您需要分析每个组件并确定哪个组件存在问题,然后相应地进行调整。
We're in the process of implementing a 1000 concurrent user sharepoint website, which may or may not be large, however some steps we are taking are:
我们正在实施1000个并发用户共享点网站,这可能会也可能不会很大,但我们采取的一些步骤是:
- Implementing a detailed caching strategy, to cache webpart content intelligently.
- Use load balanced servers to ensure all our hardware is utilised rather then lying idle.
- We've undertaken capacity planning given the existing solution, so we have a good idea which component is the bottleneck for us. (The SQL Server), so we will ensure the server can cope with expected load and future growth of the site.
- We're also using hardware load balancers which will ensure our network and the related servers operate as expected, and again this is something to investigate before you implement a sharepoint website.
- We're also ensuring our webparts don't generate unnecessary html, and don't return unnecesary data, as this will slow down loading times.
实施详细的缓存策略,智能地缓存webpart内容。
使用负载平衡服务器来确保我们所有的硬件都被利用而不是闲置。
我们已经根据现有解决方案进行了容量规划,因此我们很清楚哪个组件是我们的瓶颈。 (SQL Server),因此我们将确保服务器能够应对网站的预期负载和未来增长。
我们还使用硬件负载平衡器,这将确保我们的网络和相关服务器按预期运行,在实施sharepoint网站之前,这是需要调查的内容。
我们还确保我们的webparts不会生成不必要的html,也不会返回不必要的数据,因为这会减慢加载时间。
Something which I definately think is a good idea is to have a goal to work towards, as you can spend a huge amount of money and time optimizing SharePoint, which may prove unnecessary.
我肯定认为的一个好主意是有目标努力,因为你可以花费大量的金钱和时间来优化SharePoint,这可能是不必要的。
#2
2
My additional best bets are:
我最好的投注是:
- use x64 to allow more RAM on your server
- Make the best use of your application pool recycling http://blogs.msdn.com/joelo/archive/2007/10/29/sharepoint-app-pool-settings.aspx
- Make sure all custom code properly disposes SPWeb and SPSite objects using this http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by-example.aspx
- utilize MS Capacity Planning Tool http://technet.microsoft.com/en-us/library/bb961988.aspx
- Plan your site collection and database sizes. Keeping your databases and site collections under control will be key
- GOVERNANCE GOVERNANCE GOVERNANCE - Plan for site size limits and expiration strategy. Old data should be deleted or archived for better performance. http://technet.microsoft.com/en-us/office/sharepointserver/bb507202.aspx
使用x64允许服务器上有更多RAM
充分利用您的应用程序池回收http://blogs.msdn.com/joelo/archive/2007/10/29/sharepoint-app-pool-settings.aspx
确保所有自定义代码使用此http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by正确处理SPWeb和SPSite对象-example.aspx
利用MS容量规划工具http://technet.microsoft.com/en-us/library/bb961988.aspx
规划网站集和数据库大小。保持数据库和网站集的控制将是关键
治理治理治理 - 规划网站规模限制和到期策略。应删除或存档旧数据以获得更好的性能。 http://technet.microsoft.com/en-us/office/sharepointserver/bb507202.aspx
I cannot emphasize enough that proper early planning is essential for a successful SharePoint implementation.
我无法强调适当的早期规划对于成功实施SharePoint至关重要。
#3
1
In addition to caching and hardware, try to make sure that your masterpages and page layouts are not ghosted in the database (requiring a database call to retrieve).
除了缓存和硬件之外,还要确保您的masterpages和页面布局不会在数据库中出现幻像(需要数据库调用来检索)。
Do this by ensuring the files get released to the 12 hive in your solution.
通过确保将文件发布到解决方案中的12个配置单元来执行此操作。
#4
1
Don't forget careful selection of the built-in cache settings (choose the right one for your situation). Use the BLOBCache. Use IIS Compression/caching (the defaults are not enough BTW).
不要忘记仔细选择内置缓存设置(根据您的情况选择合适的缓存设置)。使用BLOBCache。使用IIS压缩/缓存(默认值不够BTW)。
Ensure your SQL box can keep up, especially during indexing/crawling. Splitting the Application roles (indexing vs search query and dedicated WFE for indexing/crawling) helps.
确保您的SQL框能够跟上,尤其是在索引/抓取过程中。拆分应用程序角色(索引与搜索查询和专用WFE进行索引/爬网)有助于。
BTW if you're running VMWare VMs for your WFEs, Windows NLB breaks (though not consistently), so use hardware NLBs or DNS round-robin, etc.
顺便说一下,如果您为WFE运行VMWare VM,Windows NLB会中断(尽管不一致),因此请使用硬件NLB或DNS循环等。
If you don't need > 2gig RAM for the IIS Application Pool on a WFE, don't bother with 64bit on the WFE.
如果WFE上的IIS应用程序池不需要> 2gig RAM,请不要在WFE上使用64位。
Just my 2c.
只是我的2c。
#1
8
At the end of the day SharePoint is just a complicated web site with all the standard components.
在一天结束时,SharePoint只是一个包含所有标准组件的复杂网站。
In order to optimize performance you need to analyze each component and determine which one is a problem, and then adjust it accordingly.
为了优化性能,您需要分析每个组件并确定哪个组件存在问题,然后相应地进行调整。
We're in the process of implementing a 1000 concurrent user sharepoint website, which may or may not be large, however some steps we are taking are:
我们正在实施1000个并发用户共享点网站,这可能会也可能不会很大,但我们采取的一些步骤是:
- Implementing a detailed caching strategy, to cache webpart content intelligently.
- Use load balanced servers to ensure all our hardware is utilised rather then lying idle.
- We've undertaken capacity planning given the existing solution, so we have a good idea which component is the bottleneck for us. (The SQL Server), so we will ensure the server can cope with expected load and future growth of the site.
- We're also using hardware load balancers which will ensure our network and the related servers operate as expected, and again this is something to investigate before you implement a sharepoint website.
- We're also ensuring our webparts don't generate unnecessary html, and don't return unnecesary data, as this will slow down loading times.
实施详细的缓存策略,智能地缓存webpart内容。
使用负载平衡服务器来确保我们所有的硬件都被利用而不是闲置。
我们已经根据现有解决方案进行了容量规划,因此我们很清楚哪个组件是我们的瓶颈。 (SQL Server),因此我们将确保服务器能够应对网站的预期负载和未来增长。
我们还使用硬件负载平衡器,这将确保我们的网络和相关服务器按预期运行,在实施sharepoint网站之前,这是需要调查的内容。
我们还确保我们的webparts不会生成不必要的html,也不会返回不必要的数据,因为这会减慢加载时间。
Something which I definately think is a good idea is to have a goal to work towards, as you can spend a huge amount of money and time optimizing SharePoint, which may prove unnecessary.
我肯定认为的一个好主意是有目标努力,因为你可以花费大量的金钱和时间来优化SharePoint,这可能是不必要的。
#2
2
My additional best bets are:
我最好的投注是:
- use x64 to allow more RAM on your server
- Make the best use of your application pool recycling http://blogs.msdn.com/joelo/archive/2007/10/29/sharepoint-app-pool-settings.aspx
- Make sure all custom code properly disposes SPWeb and SPSite objects using this http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by-example.aspx
- utilize MS Capacity Planning Tool http://technet.microsoft.com/en-us/library/bb961988.aspx
- Plan your site collection and database sizes. Keeping your databases and site collections under control will be key
- GOVERNANCE GOVERNANCE GOVERNANCE - Plan for site size limits and expiration strategy. Old data should be deleted or archived for better performance. http://technet.microsoft.com/en-us/office/sharepointserver/bb507202.aspx
使用x64允许服务器上有更多RAM
充分利用您的应用程序池回收http://blogs.msdn.com/joelo/archive/2007/10/29/sharepoint-app-pool-settings.aspx
确保所有自定义代码使用此http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by正确处理SPWeb和SPSite对象-example.aspx
利用MS容量规划工具http://technet.microsoft.com/en-us/library/bb961988.aspx
规划网站集和数据库大小。保持数据库和网站集的控制将是关键
治理治理治理 - 规划网站规模限制和到期策略。应删除或存档旧数据以获得更好的性能。 http://technet.microsoft.com/en-us/office/sharepointserver/bb507202.aspx
I cannot emphasize enough that proper early planning is essential for a successful SharePoint implementation.
我无法强调适当的早期规划对于成功实施SharePoint至关重要。
#3
1
In addition to caching and hardware, try to make sure that your masterpages and page layouts are not ghosted in the database (requiring a database call to retrieve).
除了缓存和硬件之外,还要确保您的masterpages和页面布局不会在数据库中出现幻像(需要数据库调用来检索)。
Do this by ensuring the files get released to the 12 hive in your solution.
通过确保将文件发布到解决方案中的12个配置单元来执行此操作。
#4
1
Don't forget careful selection of the built-in cache settings (choose the right one for your situation). Use the BLOBCache. Use IIS Compression/caching (the defaults are not enough BTW).
不要忘记仔细选择内置缓存设置(根据您的情况选择合适的缓存设置)。使用BLOBCache。使用IIS压缩/缓存(默认值不够BTW)。
Ensure your SQL box can keep up, especially during indexing/crawling. Splitting the Application roles (indexing vs search query and dedicated WFE for indexing/crawling) helps.
确保您的SQL框能够跟上,尤其是在索引/抓取过程中。拆分应用程序角色(索引与搜索查询和专用WFE进行索引/爬网)有助于。
BTW if you're running VMWare VMs for your WFEs, Windows NLB breaks (though not consistently), so use hardware NLBs or DNS round-robin, etc.
顺便说一下,如果您为WFE运行VMWare VM,Windows NLB会中断(尽管不一致),因此请使用硬件NLB或DNS循环等。
If you don't need > 2gig RAM for the IIS Application Pool on a WFE, don't bother with 64bit on the WFE.
如果WFE上的IIS应用程序池不需要> 2gig RAM,请不要在WFE上使用64位。
Just my 2c.
只是我的2c。