在3.2版本之前,已经有对ajax请求进行排队的功能。当一次性发送多个ajax请求时,后面的请求被排进队列,直到前面请求的响应回来了才能发送,这样有效的防止了多个请求对临界资源并发访问导致的问题,同时客户端的排队也可以减轻服务器端的压力。其详细情况请参考《OperaMasks SDK 3.0版新特性一览》的相关文章。
ajax请求排队虽然有效,但对于dataGrid和tree等由于二次取数触发的delegate请求却无能为力,其原因在于,这些delegate请求,其底层使用的ajax 框架不是由AOM提供的,而是使用ExtJS的ajax框架,无法对其进行监控。因此在3.2版本中引入了delegate请求排队的新特性。
delegate请求排队与原先的ajax排队本质上没有区别,只是将dataGrid,tree等等的二次取数请求(当然还有文件上传的delegate请求)单独拿出来处理。与其在服务器端加锁同步,不如在客户端做同步,服务器压力小而且请求有序,这就是delegate请求排队的主要意义。
关于delegate请求排队更多信息请参考《delegate请求排队,让表格按指定顺序加载数据》