GeoServer 和 OpenLayers 在显示大量点时有啥限制?

Posted

技术标签:

【中文标题】GeoServer 和 OpenLayers 在显示大量点时有啥限制?【英文标题】:What are the limitations of GeoServer and OpenLayers when showing a large number of points?GeoServer 和 OpenLayers 在显示大量点时有什么限制? 【发布时间】:2010-01-21 10:00:42 【问题描述】:

我们正在尝试使用 OpenLayers 和 GeoServer 显示具有大量点的地图(范围从 1000 到 20000,具体取决于用户标准)。这些点存储在 PostgreSQL 数据库中。

虽然应用程序显示下限似乎没有什么问题,但它的实际限制似乎在 5000 点左右。我们应用的 SLD 也很大(按不是特征 ID 的标准单独列出所有点)。数字越大,图像不能保证返回,并且请求有时会导致 GeoServer 崩溃,需要重置服务。

有谁知道这样的事情是否可行,如果可行,有什么配置技巧吗?

我们在用于过滤的字段上应用了 btree 索引。

【问题讨论】:

【参考方案1】:

您要向 OpenLayers 添加什么类型的图层? 您可以使用 WMS 图层而不是将点作为矢量特征:

http://dev.openlayers.org/docs/files/OpenLayers/Layer/WMS-js.html

然后,GeoServer 将生成点的图像,并且只需要传递几 kbs 的 JPEG 的 PNG,而不是会大得多的几何和样式信息。不过,您会失去一些客户端功能(鼠标悬停事件等)

如果您已经这样做了,那么可能会有一个单独的问题。 5000点应该可以在服务器上处理。

或者,您可能需要重新考虑如何显示积分。一次 5000 点听起来好像很混乱。也许使用不同大小的圆圈来表示 10、100、500 点等在处理和可视化方面会更容易。

【讨论】:

非常感谢您的回复。我们使用的是 WMS 层(我应该说)。我同意显示的点数令人困惑,因此我们以不同的方式显示数据(使用政治边界)。点等级现在仅在放大到它们变得更有用的等级后才会出现。

以上是关于GeoServer 和 OpenLayers 在显示大量点时有啥限制?的主要内容,如果未能解决你的问题,请参考以下文章

Openlayers 和 geoserver - 没有这样的属性:bbox

Geoserver 2.10 Openlayers 3 TextSymbolizer 标签未显示

如何使用 OpenLayers 和 Geoserver 使用 TileWMS 进行统计

请教各位用Openlayers+geoserver怎么实现这种效果

Geoserver 和 Openlayers - 在 WFS-T 中显示详细的消息错误

OpenLayers 将动态复选框创建绑定到 GeoServer LayerGroup