Performance 如何从速度和数据的角度正确管理在谷歌地图上绘制许多不同的形状

Performance 如何从速度和数据的角度正确管理在谷歌地图上绘制许多不同的形状,performance,google-maps,web-applications,google-maps-api-3,asynchronous,Performance,Google Maps,Web Applications,Google Maps Api 3,Asynchronous,我有一个应用程序,在给定的地理位置,每个邮政编码都能获得大量分数。然后,它将这些点粗略地转换成表示邮政编码边界的多边形(因为数据必须缩小才能及时发送),然后将它们放在谷歌地图上。每个邮政编码都有一个弹出窗口和带有附加信息的颜色 我的问题是:当脚本没有挂起,只是需要时间处理所有返回的数据以生成形状并将其绘制在地图上时,什么是防止脚本在iPad等设备上崩溃的最佳方法 我目前的想法是web工作人员进行部分计算,但由于它仍然需要返回到主线程,因为它需要窗口和文档对象,所以可能有我没有想到的替代方案 最快

我有一个应用程序,在给定的地理位置,每个邮政编码都能获得大量分数。然后,它将这些点粗略地转换成表示邮政编码边界的多边形(因为数据必须缩小才能及时发送),然后将它们放在谷歌地图上。每个邮政编码都有一个弹出窗口和带有附加信息的颜色

我的问题是:当脚本没有挂起,只是需要时间处理所有返回的数据以生成形状并将其绘制在地图上时,什么是防止脚本在iPad等设备上崩溃的最佳方法


我目前的想法是web工作人员进行部分计算,但由于它仍然需要返回到主线程,因为它需要窗口和文档对象,所以可能有我没有想到的替代方案

最快的方法是将繁重的渲染移到服务器端,尽管这在许多情况下可能不实用

如果您确实想走这条路线,请查看geo DB,它可以通过在服务器端渲染形状并将其作为地图分幅发送到客户端来渲染大型多边形表

如果你热衷于保持它的客户端,那么你可以通过尽可能多地将控制权释放回浏览器来避免iPad等平台上的锁定。使用
setTimeout
异步运行工作,并尝试将其分解,以便每次
setTimeout
调用仅处理一行或一个几何体