日期:2014-05-17  浏览次数:20433 次

异步编程优化网站
请教大家一些问题:
网站初始化需要数据绑定一些控件(数据库load资料),原来方法是后台写代码直接绑定,现在是前台使用js+ajax进行绑定,感觉速度并没有快
我所认为的异步编程类似多线程,是并行执行的应该会快些

请教下以下几个问题:

1.异步编程=多线程
2.查看网页执行时间请推荐下好的方法或软件
3.有无好的绑定方法可以提高效能(主要是速度)

感谢!

------解决方案--------------------
要是 只要是异步就能提高网速,所有的网站都把所有模块化的加载异步了。

更多的异步从另一个角度而言是 增加连接数。 这个连接数包括客户端请求和数据库请求两种
------解决方案--------------------
在服务端对数据进行缓存,减少对数据库的频繁查询
------解决方案--------------------
引用:
网页初始化时有十几个要绑定的dropdownlist有无好一点的办法可以提高性能的

对于dll的数据,应该写个放到配置文件中,易于维护修改,且同时利用缓存,只加载一次即可。
如果同时多个(量大,一般以为10个+)加载,可在业务层次上酌情调整加载
------解决方案--------------------
你可以把10几个dropdownlist数据一次性读出来后分别绑定,不用访问10几次数据库。
------解决方案--------------------
1、js是单线程,基于js异步也只能是单线程。
用异步提高加载速度,不是加快http传输速度或加快js运行速度,这两者都受制于客户端你管不着。
你要做的是要减少每次传输的开销,比如页面头部和尾部都一样话,只要加载中间那段就可以了。ajax的请求也不能太多,因为每次都要来回发送head。
2、firebug就有
3、参照1
------解决方案--------------------
引用:
1、js是单线程,基于js异步也只能是单线程。
用异步提高加载速度,不是加快http传输速度或加快js运行速度,这两者都受制于客户端你管不着。
你要做的是要减少每次传输的开销,比如页面头部和尾部都一样话,只要加载中间那段就可以了。ajax的请求也不能太多,因为每次都要来回发送head。
2、firebug就有
3、参照1


说的是,但是,C#里的异步机制对于winform编程可能更能体现优势吧。

如果你只是想要多线程加速页面的加载,那么,Ajax也能胜任这个任务。Ajax允许开发人员控制是否异步请求或同步请求,如果异步请求,那么提交后马上会执行后面的JS代码,不用等待服务器返回结果,这样就可以用它来模拟多线程。而且现在的网页DIV块状设计模式,也方便分步加载显示网页。

当然,最好的办法还是使用ASP.NET自身的异步编程机制,可惜市面上没多少图书讲解。