我有一个带Google地图的页面。在页面加载时,只有一个标记,用户可以动态添加标记和表单。为什么时间为每个呼叫增加多个ajax呼叫?
我使用AJAX调用检索数据库中的坐标。每次调用返回150个标记。因此,如果我必须检索更多标记,则我会进行其他调用,直到所有标记都显示在我的地图上。
我注意到(加载2500个标记和萤火虫)执行服务器端动作的时间随着每次调用而增加。
任何人都可以解释为什么,如果有办法解决它(因为,最后,电话大约需要30秒)?
编辑:
执行时间为每个呼叫(尝试检索约2500标记):
request 1 : 2.54s
request 2 : 1.83s
request 3 : 1.25s
request 4 : 1.31s
request 5 : 1.4s
request 6 : 1.81s
request 7 : 2.86s
request 8 : 8.25s
request 9 : 20.06s
request 10 : 19.25s
request 11 : 23.33s
request 12 : 25.86s
request 13 : 26.62s
request 14 : 27.85s
request 15 : 32.37s
request 16 : 34.91s
request 17 : 35.82s
request 18 : 36.7s
功能是每个呼叫完全相同,返回值具有相同类型和相同长度。
我做了很多调用,以便用户可以在标记加载时继续在地图上工作。
您可以发布您在AJAX调用中运行的代码吗? – 2011-05-18 11:03:52
在我看来,它与服务器端的东西,而不是AJAX有关。 – binaryLV 2011-05-18 11:35:10
你可以调用单个请求而不需要调用以前的请求吗?也就是说,只尝试调用请求14并查看是否需要28秒。 – binaryLV 2011-05-18 12:39:41