iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践

这篇具有很好参考价值的文章主要介绍了iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

作者:Carlo

数据特点
  • 栅格数据:数据量大、增长快、接收来源广、类型多、时间跨度大
  • 矢量数据:随着栅格数据增长而增长的,包含点线面类型
项目难点
  • 万级数据(MongoDB瓦片)需要发布成GIS服务(wms、wmts)
  • 单个iServer承载的GIS服务较多时, 出现启动过慢等问题,原因是iServer启动时,会全部构建和初始化服务
  • 服务个数多了以后,会占用大量的资源(CPU,内存,句柄等) 进而导致资源不够用,且空闲服务会占用、浪费资源 。
优化方案
先了解“服务实例动态化管理”功能特性

(1)服务延迟初始化,轻松支撑海量GIS服务,秒级启动;
(2)服务按需启动,快速响应、运维无忧;
(3)自动销毁空闲服务,合理分配硬件资源;
(4)服务容量控制,提升系统可用性。

“服务实例动态化管理”应用场景

(1)已发布的存量 GIS 服务数量达到数千量级以上,且大部分 GIS 服务使用频次较低;
(2)GIS 服务器资源有限、且大部分GIS 服务使用频次低,需要合理控制资源使用,保证系统的稳定性、可用性。

优化1:开启服务实例动态化管理

(入口:首页-高级-全局设置-服务实例动态化管理设置)
iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践,SuperMap,iServer,MongoDB

效果

  • iServer初始化耗时能够达到秒级;
  • 首次拉起服务耗时在9min+,后续每次拉起服务不耗时;
  • 访问、预览出图耗时达到ms。
    iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践,SuperMap,iServer,MongoDB
优化2:同时设置一个特定服务关闭动态管理持续存活

iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践,SuperMap,iServer,MongoDB
效果

  • 首次拉起服务不耗时,后续每次拉起服务不耗时;
  • 拉起的服务全部被自动销毁后,再次拉起服务也不会耗时。
优化3:将服务配置信息存储到PostgreSQL数据库中,同时删除本地的iserver-service.xml配置文件

(入口:首页-高级-全局设置-服务配置信息存储设置)

原因:iServer对服务状态修改时,会读写XML文件。当服务数量多,配置文件较大时,读写操作会比较耗时。建议用户将服务配置存储到数据库中,可以大幅改善配置的读写性能。
iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践,SuperMap,iServer,MongoDB

效果

  • 页面启动/暂停单个服务请求耗时为ms级别
    iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践,SuperMap,iServer,MongoDB
应用效果

iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践,SuperMap,iServer,MongoDB文章来源地址https://www.toymoban.com/news/detail-664607.html

到了这里,关于iServer通过服务实例动态化管理MongoDB万级瓦片集应用实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包