|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
asp对于服务器的要求较高,一般的服务器如果访问量一大就垮了,不得不重启。 如何创立鲁棒性、准确性、可保护性和功能俱佳的ASP使用法式?要做甚么?不做甚么?本文以提纲的模式,给出了次要的Check-Points(反省点)。
甚么是ASP
Active Server Page,简称ASP,是:
. 毗连网友界面(HTML)和贸易逻辑(Business Logic);
. 供应分歧的、轻易利用的、有形态坚持的、基于Web的客户端;
. 为那些需求事务处置的WEB 使用供应使用法式情况。
ASP不是:
. 完成贸易逻辑(Business Logic)的中央;贸易逻辑应当经由过程COM+、MTS或数据库来完成。
ASP的利用者应当有上面的经验:
. 开辟使用法式,而不是开辟一个一个的孤立ASP页面;
. 对输出和输入停止缓存;
. 在宣布之前要测试;
. 选择功能较好的部件;
. 削减数据库的存取:缓存变换后的了局;
. 利用MSMQ来处置有工夫延迟的任务;
站点设计
. 你的站点想供应甚么?
. 信息架构:80/20原则;
. 站点导航;
. 页面结构;
. 可用性;
. 利用ALT和Title属性;
. 不利用图片或Image Map的导航;
. 合适大多半低版本阅读器,思索他们对ActiveX、RDS、XML、DHTML、Java Applet的撑持情况;
. 屏幕分辩率和屏幕色彩数
. 是不是撑持WebTV、PDA…?
. 设置IMG的width和height属性。
. 非阅读器的会见,如主动机械人(Spider);
. 利用帧(Frame)?
. 利用Cookies的特性化;
. 防止坏毗连;
. 利用meta标签;
. 内容审核;
. 内容检索;
. 了局反应:用户反应和跟踪;
. 削减下载工夫;
三层、四层使用设计
可读性、可保护性
. 利用正文;
. 在VBScript剧本中利用<%Optio. Explicit%>;
. 利用字符串变量存储SQL字符串:便于调试;
. 利用Server.MapPath和绝对途径;
. 利用ADODB.INC或<!―metadata typelib=somelib file=somedll-->来援用常量,不要直接利用常量数值。
. 指定ADO挪用的缺省参数,防止失足;
. 利用库或部件来封装代码。
准确的办法:
. 利用Server.URLEncode
. 毛病捕捉和处置
国际化:
. 利用<%CodePage%>
. 利用Session.CodePage
. 在IIS5.0中,Response.write撑持UTF8
其他:
. 利用#include 重用代码
. 利用分页手艺
站点平安:
. 客户身份验证
. 输出验证
. #include 文件不要利用.INC后缀,利用.ASP或设置.INC的使用法式映照
. 把MDB文件寄存在非WEB途径下;
. 利用ADSI做平安办理
Session和Application形态
Session的利用:
. 利用起来很便利然而很有成绩;
. HTTP是一个无形态的协定;
. 设计购物推车出格有效;
. 晦气于可伸缩性设计(Scalability);
. 在不需求Session的页面中利用<%EnableSessionState=false%>
. 尽量完整防止利用Session;
. 在多个web办事器情形下不合适;
. 某些部件使Session运转在单一线程形式,削减了吞吐量;
. 损耗内存;
. Session有超时的成绩
. 需求客户真个阅读器翻开cookie设置;
. 不要在session中保留recordset,或缓存connection对象;
. 在global.asa不要利用空的Session_OnEnd;
. 可选计划:
. cookies
. 直接形态编码:复杂、轻易、不平安
. 后端数据库的ID作为形态值
. querystring 参数
. 如amazon的url体例
. 埋没的表单
Application变量:
. 同享变量
. 不克不及耐久保留
. 多个web办事器时不可,除非只是只读变量。
缓存
. 对静态内容十分幻想
. 不要利用Response.Expires=0,利用正数:
. Response.Expires=-10000;
. Response.AddHeader “Pragma”,”no-cache”
. Response.AddHeader “cache-control”,”no-store”
. 办事器缓存
. proxy缓存
. 客户端缓存由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。 |
|