优化DotNetNuke网站性能的10个技巧

来源:转载

以下的这些配置是目前为止我所发现的最佳基准配置,依据不同的主机运行环境,更新频率,访问量,以及用户数量,网站的优化配置会有些不同。经过优化的DNN也是可以运行得很快的。
以下我将使用DNN5.01中文版示范,这些技巧同样适用于DNN4.x。

1. 主机管理 -> 主机设置中的基本优化

首先我们来优化主机设置,我仅在这里指出关键的设置

外观

“显示版权信息”:禁用此项

◆高级设置 -> 身份验证设置 (只适用于DNN4.x,DNN5设置方法见下) 禁用不需要的身份验证方式, 通常我会禁用LiveID和OpenId以增加用户登陆的速度

◆高级设置 -> 性能设置

◆网页状态保存方式:“页面”,这里是指viewstate的存储方式

◆模块缓存方式:“重量级缓存”,这里使用的是页面输出缓存

◆客户端缓存:“Public”,这样浏览器就会缓存js,css,图片这些资源文件

◆压缩设置:“GZip方式压缩”,注意这里只是Gzip压缩只是压缩aspx动态页面,javascript, css等资源文件请在IIS中设置压缩。压缩后页面大小一般会减少60%以上,速度提高也节省带宽。

◆高级设置 -> 其它设置

◆任务调度模式: “计时器模式”,HTTP请求模式对访问率低的网站会造成初次访问加载过重的现象。启用事件记录缓存? :选中此项。是否自动同步文件? :禁用此项

2. 卸载不需要的模块和Provider

卸载不需要的模块可以提高加载网站的速度,卸载模块后模块对应的程序集(dll)也会从bin文件夹中移除,这样会减少初次读取网站时加载程序集到内存的数量,以提高网站读取速度。DNN安装向导中默认模式只会安装基本的模块和Provider, 但如果安装时选择了全部模块及Provider请按以下方式卸载, 当需要时再安装。

DNN4.x :“主机管理 -> 模块定义” 中删除不需要的模块

DNN5.x :“主机管理 -> 功能扩展” 中删除不需要的扩展,例如不需要论坛时就不要安装,网站不提供OpenId验证方式就卸载掉。

3. 禁用不需要的身份验证方式

此设置只适用于DNN5, 在DNN5中如果安装了多种身份验证方式,例如OpenID, LiveID, Active Directory在站点管理中可以针对不同的站点关闭开启需要的验证方式,这点比DNN4.x要灵活。在这里我们要禁用不需要的身份验证方式已提升登陆页面速度。 在“站点管理 -> 功能扩展中”选择扩展类型“Authentication System(身份验证系统)”然后编辑不需要的身份验证系统并禁用,通常我会只开启Default Authentication(默认的DNN验证方式),禁用:

DNN_OpenIDAuthentication

DNN_LiveIDAuthentication

DotNetNuke Active Directory Authentication Project

4. 调度管理的设置

在“主机设置 -> 调度管理中”根据需要延长或关闭不需要的调度任务,以防止频繁执行调度任务增加服务器压力。

如果网站不提供站内搜索,则禁用DotNetNuke.Services.Search.SearchEngineScheduler

如果网站提供站内搜索,则把DotNetNuke.Services.Search.SearchEngineScheduler任务频率设置为1天重试频率设为12小时,这将会极大的减缓服务器压力。

同样把DotNetNuke.Services.Scheduling.PurgeScheduleHistory任务频率设置为1天

以上1-4就是最基本的通过网站配置实现的优化,总的来说以上的改变会带来显著的性能提升,但大多时间仍然不能足够的保正网站平滑的运行,因此依据不同情况我会进行以下的优化。

5. 定期清除事件记录

很多用过DotNetNuke的朋友会发现数据库中[EventLog] 表(记录站点“事件记录”的表)可能会成为导致性能下降的罪魁祸首因为DNN网站中的很多操作都会被记录到事件记录(EventLog)中, 开启事件记录缓存会减缓尺寸过大的[EventLog]表对网站带来的副作用,但是最佳的优化方法莫过于定期清除“事件记录”。

[1] [2] 下一页

分享给朋友:
您可能感兴趣的文章:
随机阅读: