关于性能,就好比使劲勒肚子攒钱一样,每一个写WEB应用的人恨不得拼命去节省每一毫秒的资源占用
那些写慢了GUI应用的人,提高性能的方法和过程是既其单纯的
但是,由于WEB应用的状态不确定性和B/S结构的分离性,导致WEB应用的性能受到多方面因素的影响,优化起来,方法可以说很多,也可以说无从下手
从一个请求提交到一个页面呈现,这个过程中必须经过的步骤就是应用优化的关键所在,当然,我们没有办法去让客户都使用宽带或者P4 3.0G的CPU去访问某个站点,但是,我们可以对服务器以及服务器端的一切进行优化,下面的几个部分可能是性能的瓶颈所在
1,动态站点的数据库服务器软件及其硬件
2,站点WEB服务器硬件性能
3,WEB站点的互联网出口带宽
4,WEB应用代码
5,客户端HTML代码

通常数据库服务器和硬件我们是没有办法选择了(BOSS都选好了),可是,数据库系统上编写的存储过程的优化还是有必要的
WEB服务器性能的优化,基本上只运行作为WEB服务器必备的功能部件及服务
带宽需要用MONEY来换取
WEB应用代码很重要了,缓存可以提高性能,不过,值得一提的是,站点的动态性越高,其性能就越差,这基本上是不争的事实,因此,如何在可用性,功能性之间进行权衡,就要看具体场所了,VIEWSTATE虽然很好,可是,嵌入在HTML中的庞大数据量对于站点来说,并不是一件好事,POSTBACK不错,可是,每次点击按钮都要POSTBACK未免也太浪费带宽了,因此,应该尽量减少POSTBACK的份量吧,至于DATAGRID,真的不错,简化了许多代码,可以增加了相当多的VIEWSTATE,可是如果禁用了其VIEWSTATE呢?它就是折了翼的鹰吧
权衡一下吧,该用用REPEATER或者是DATALIST的时候,还是用用它们吧,至于QUERYSTRING,虽然它很暴露使URL很丑,可是,毕竟比POSTBACK方式来得快吧,因此,必要时,还是用用的好
客户端HTML代码,在撰写时,应尽量遵循XHML规则,另外,有许多人喜欢用嵌套表格布局,虽然我承认布局一定要用到表格,可是,别让表格嵌的太深,我一般最多用三层嵌套,嵌套太多会增加IE解析HTML的难度,同样也让你的页面呈现速度缓慢