新人asp.net.问下一般的b/s应用,每次页面刷新都会new一个业务层对象并调用处理相关业务逻辑,而这些业务逻辑对象,每次都会new一个数据访问层对象进行操作。
每次页面刷新都这样?很多用户都这么不断刷新页面,性能怎么办?
我是新手,对asp.net的认识都还没入门,请大家帮忙讲解啊。
页面可以通过持久性不断来回传数据,那些中间使用的逻辑层对象和数据层对象不会持久性,每次,每个事件过程难道都是用的时候new一个出来处理?
每次页面刷新都这样?很多用户都这么不断刷新页面,性能怎么办?
我是新手,对asp.net的认识都还没入门,请大家帮忙讲解啊。
页面可以通过持久性不断来回传数据,那些中间使用的逻辑层对象和数据层对象不会持久性,每次,每个事件过程难道都是用的时候new一个出来处理?
用不用new,对结果都是毫无影响的。至于说是影响了多少性能,我希望你自己测试,并且贴出测试数据。从逻辑上说,没有必要每一次都new一个新的对象。但是如果说有一个“中间层”,它需要应对同时并发的成百上千个独立命令,并且分别创建一个处理对象来响应对命令的请求,那么每一次都new一个新的对象也是未尝不可,因为实现命令处理的人很可能在对象中的多个方法使用内部的(在方法以外、类型范围定义的)变量。那么同时并发使用同一个命令处理对象,就会造成并发的多个命令的处理冲突、胡乱产生结果。这就好像原本牛肉面馆是一个饭碗给一个顾客,你现在仅仅为了节省资源就硬要让几个顾客同时用同一个碗。