提搞网站访问速度可做哪些优化小结介绍
一、 服务器优化
Windows系列:
64位Win2008r2 + Hpyer-V + 负载均衡 + IIS7.5
64位Win2003 + 虚拟机 + 负载均衡 + IIS6
禁止服务器访问外网。关掉不必要的端口。
去掉每个磁盘的所有权限,只保留administrators组和system完全控制权限。
IIS7.5标识使用ApplicationPoolIdentity,给目录权限用户是:IIS AppPool站点名
IIS6需要为每个站点建独立的用户,为IIS用户单独设置权限。
IIS禁止日志记录。
二、 数据库优化
l 64位MSSQL2008:
少用触发器/游标/外键。多用存贮过程和视图。适量使用索引查询速度会提高很多,每个表的索引尽量不要超过3个。
定时查看死锁的进程和等待进程,并清除,还要及时修正死锁的来源。
复杂的统计报表需要用计划去跑。
查询记录数要使用count(0) 不要使用count(*)。
select的时候表字段不要使用*。*查询所有字段是很慢的。
如果字段是索引列可使用UNION ALL 替代 OR,走索引线路查询。
大记录集要使用分页查询。
尽量不要使用TEXT/NTEXT类型,要使用VARCHAR(MAX)/NVARCHAR(MAX)。
尽量不要使用临时表,要使用Table表类型或内嵌视图。
三、 后端优化
l 多使用DbDataReader,尽量不要使用DataTable/DataSet读取数据。
l for (int i = 0; i < t; i++) 应该这么写:
for (int i = 0, len = t; i < len; i++)或
foreach (DataRow info in )推荐这种写法
l 少用try catch,用到try catch时要和 finally一起使用。
l 多使用using如:
using (DbDataReader dr = bDataReader(strSql)) { while (()) { }; }
l 大字符串操作请使用StringBuilder 少使用string,字符串比较用Compare,字符串相加用Concat,大字符串相加用StringBuilder Append。
l 变量要在先定义在使用,不要在循环内定义变量。如:
错误的写法是:for (int i = 1; i < 10; i++) { string s = ring(); }
正确写法:string s = y; for (int i = 1; i < 10; i++) { s = ring(); }
这里还有一个地方要注意的`:在字符串相加的时候,如果有int类型的要先转成string类型在相加,减少不必要的装箱拆箱操作。
l 如果你使用的是HTML控件,需要禁用<%@ Page EnableViewState="false" AutoEventWireup="false" EnableSessionState="false",ig
l 使用foreach替代for
l 操作数据库要使用存贮过程/视图。
l 多使用CACHE对数据缓存。这才是最关键的。NET提供:e/e,共享缓存有velocity/ memcached
l 可使用<%@ OutputCache Duration="60" 缓存页面,可使用erOutput = true;/ <%@ Page Buffer="true" 输出缓冲。
l 可将站点生成静态面页,好处多多。
l 可使用URL重写成伪静态,提供rss/baidu-sitemap/google-sitemap服务,有利于搜索引擎收录。
l Ajax调用页面要使用一般处理程序,速度要比文件要快。Ajax请求要使用POST不要使用GET。
l 发布站点时DLL要Release版本,不要用Debug版本。
l IIS需要使用集成模式,不要使用经典模式。
l ig 加关闭错误提示。
l ig 加关闭调试模式。
l 使用sfer替换rect
l 多使用泛型集合操作,少用ArrayList。
四、 前端优化
l 最好不使用NET控件,用HTML控件,页面使用CSS+DIV布局。
l 使用JSON + AJAX进行数据交互。
l 要学会使用jQuery提高开发速度。
l 尽量少用<img标记,改用background样式控制背景图片。这样做的好处是方便扩展多皮肤。
l 将CSS background背景图片多张合并成一张图片,保证合并后的图片大小不要超过50K。可将JS文件合并在一个JS文件中,然后使用closure_packer_yui_compiler进行压缩,这样做的好处是可减少客户端连接数。
l JS代码段不要放在HTML页面,应该放在独立的JS文件里面,好处是JS文件可以CDN/缓存。
l 可将CSS文件放到之间,JS文件或代码放到之前,让页面先显示在执行JS。
l 可将网站的图片/CSS/JS/资料/资源放到独立的站点,做下CDN加速,二级域名会有COOKIES,最好使用一级域名。
l A标记和IMG标记需要加上title/alt,标签内需要加title/keywords/description/rss/sitemap优化,有利于搜索引擎收录。
l 页面可启用gzip压缩。
l 安装FF的插件“YSlow/Page Speed”。
五、 其它优化
-
建筑公司工程部工作总结(通用7篇)
总结在一个时期、一个年度、一个阶段对学习和工作生活等情况加以回顾和分析的一种书面材料,它可以有效锻炼我们的语言组织能力,不妨让我们认真地完成总结吧。但是总结有什么要求呢?下面是小编为大家收集的建筑公司工程部工作总结,希望对大家有所帮助。建筑公司工程...
-
工厂普通员工个人工作总结通用15篇
总结是事后对某一阶段的学习、工作或其完成情况加以回顾和分析的一种书面材料,它可使零星的、肤浅的、表面的感性认知上升到全面的、系统的、本质的理性认识上来,不如静下心来好好写写总结吧。那么总结有什么格式呢?下面是小编精心整理的工厂普通员工个人工作总结...
-
出纳试用期转正个人工作总结集合6篇
总结是指对某一阶段的工作、学习或思想中的经验或情况进行分析研究,做出带有规律性结论的书面材料,它在我们的学习、工作中起到呈上启下的作用,不如立即行动起来写一份总结吧。但是却发现不知道该写些什么,以下是小编为大家收集的出纳试用期转正个人工作总结,供大家...
-
幼儿园保育员年终个人工作总结(合集12篇)
总结是指社会团体、企业单位和个人对某一阶段的学习、工作或其完成情况加以回顾和分析,得出教训和一些规律性认识的一种书面材料,它可以提升我们发现问题的能力,是时候写一份总结了。总结怎么写才不会千篇一律呢?下面是小编精心整理的幼儿园保育员年终个人工作总结...