【发布时间】:2014-07-31 23:53:36
【问题描述】:
我正在尝试将 Geoserver 设置为我们的 MVC 应用程序的后端。 Geoserver 工作得很好……除了它一次只能让我做一件事。如果我正在处理 shapefile,则 REST 界面和 GUI 会锁定,直到作业完成处理。
我知道有集群地理服务器配置的选项,但这只是负载平衡,所以我将有两个而不是只有一个读/写操作...但我们需要将其扩展到一次至少有 20 个并发任务。
我在互联网上看到的所有参考资料都谈到锁定并发连接数,但始终只允许 1 个。
很明显,GeoServer 用于同时有超过 1 个请求的生产环境。我只是不知道如何实现它。
几周前,我的同事向 Geoserver 开发团队发送了这封电子邮件,该问题被描述为配置锁定……通过更改变量我们可以释放它。我唯一看到这个变量的地方是 GitHub 上的源代码。
有没有办法在 Geoserver 的一个配置文件中指定关闭这些锁,以便我可以进行并发读/写?如果有人在此之前遇到过这种情况,请帮忙!!!谢谢!
2014 年 5 月 16 日星期五晚上 7:34,Sean Winstead 写道:
嗨,
我们使用的是 GeoServer 2.5 RC2。通过 REST 上传形状文件时 API,服务器直到shape之后才响应其他请求 文件已处理完毕。
例如,如果我开始上传文件,然后单击图层菜单 Web 应用程序中的项目,直到收到对图层页面的响应 文件上传和处理完成后。
我研究了这个问题,但没有找到合适的原因/答案。我做了 安装控制流扩展并创建一个 controlflow.properties 数据目录中的文件,但这似乎没有任何效果。
如何诊断此行为的原因?
很简单,就是配置锁。我们的配置子系统不是 能够处理正确的并发写入, 或在写入期间读取,因此存在一个完整的实例读/写锁 每次使用其余部分时都会拍摄 api和用户界面,锁到位时什么都做不了
如果需要,可以使用系统变量禁用它 GeoServerConfigurationLock.enabled, -DGeoServerConfigurationLock.enabled=true 但当然我们无法预测配置会发生什么,如果 你这样做。
干杯 安德烈亚
【问题讨论】:
标签: concurrency locking task scaling geoserver