【发布时间】:2011-09-02 11:51:05
【问题描述】:
我正在使用 Symfony 和 MapFish 插件 http://www.symfony-project.org/plugins/sfMapFishPlugin 开发一个 WebGIS 应用程序
我使用 MapFish 生成的 GeoJSON 通过 OpenLayers 渲染图层,当然是在矢量图层中。
当我显示多达 3k 个功能的图层时,一切正常。当我尝试使用具有 10k 或更多功能的图层时,应用程序会崩溃。我不知道阈值,因为我的层要么具有 2-3k 特征,要么具有 10-13k 特征。
我认为问题与教义有关,因为日志中的最后一个报告是这样的:
Sep 02 13:22:40 symfony [info] {Doctrine_Connection_Statement} execute :
然后查询获取地理记录。
我说我认为问题在于功能的数量。因此,我使用 OpenLayers.Strategy.BBox() 来减少要获取和显示的功能数量。结果是一样的。执行查询时应用似乎卡住了。
如果我对用于获取功能 GeoJSON 的查询字符串添加限制,则应用程序可以正常工作。所以我认为这与 MapFish 插件无关,而是与 Doctrine 相关。
谁有启示? 谢谢!
【问题讨论】:
-
我刚刚尝试了一个超级缩放比例并且......惊喜!显示功能!这很酷,因为我可以处理我的应用程序,但是当需要加载超过 3k 条记录时,这并不能解决性能问题。我错过了什么吗?
标签: performance symfony1 doctrine openlayers postgis