远程请求的数量是否会影响性能


Does the number of remote requests affects performance?

我有一个相册制作网站,我正在努力提高加载和保存性能。

相册制作工具显示在网络浏览器中,用Flash完成,数据库操作的远程调用通过AmfHP完成。

保存相册的算法基本上说:

foreach(page in photobook){
    foreach(component in page){
        //Make a remote call that saves the component in the Database
    }
}

这意味着,如果一本相册有30页,每页有10个组件(照片),该工具将在不计算上传连接的情况下创建大约300个同时连接。

例如,Firefox似乎已经准备好创建一个队列来处理请求。

这会影响性能吗?

创建一个队列来控制同时进行的远程呼叫的数量会有帮助吗?

值得吗?

谢谢你能给我的任何帮助。

每个对远程服务器的请求都会导致脚本执行时间增加。

对数据库的3次查询比3次远程请求更快。

因此,是的,300个远程请求将严重影响您的性能。

最好的解决方案是用XML对所有数据进行分页或序列化。尽管对XML很谨慎,但如果太大,也会导致性能问题。

我认为分页是最好的选择。

300个同时请求

是的。太多

只加载您需要的内容
为什么要立即加载每一张图片?加载第一个页面,也许可以预加载第二个页面,但如果用户看得不比第一个页面更远,你会消耗大量带宽。

除此之外,我们假设您的相册允许用户看到通过javascript检索到的高分辨率版本。当用户点击此按钮时,他们的请求将被添加到队列的底部,直到300个其他请求中的最后一个完成后才被处理。