云原生下GIS服务规划与设计
作者:lisong
目录
- 背景
- 云原生环境下GIS服务的相关概念
- GIS服务在云原生环境下的规划调度策略
- GIS服务在云原生环境下的调度手段
- GIS服务在云原生环境下的服务规划调度实践
背景
作为云原生GIS系统管理人员,在面对新建的云GIS系统时,通常需要应对大量GIS服务的接入与管理。为了确保系统和服务的稳定流畅运行,我们需要提前做好规划与设计工作。
云原生环境下GIS服务的相关概念
(1)服务实例
GIS云套件中,一个GIS服务对应一个服务实例,服务实例为服务器上的具体服务。服务实例用于接收和处理客户端请求,实现一定的GIS功能,并将响应结果返回给客户端。GIS云套件支持使用不同数据源发布服务实例,并对服务实例进行管理。

(2)服务节点
GIS云套件中,服务节点是承载服务实例运行的单元,GIS云套件所有服务实例都在服务节点中运行,一个服务节点可支撑一个或多个服务实例运行。在服务节点页面,您可以创建服务节点、对服务节点进行监控与管理,在服务节点之间任意调度已发布的服务实例。

GIS服务在云原生环境下的规划调度策略
在GIS服务节点规划初期,可以从地区和服务类型进行划分。
(1)地区划分:对于人口密集的城市,需要更多的GIS服务节点来支持更高的访问量和更快的数据处理速度。而对于人口较少的地区,则可以减少GIS服务节点的数量,以节约资源。
(2)服务类型划分:对于需要实时更新的地图服务,需要更多的GIS服务节点来保证数据的及时性和准确性。而对于较为静态的GIS数据服务,则可以减少GIS服务节点的数量。
在接入GIS服务后,还可以根据实际情况按照数据量和访问速度进行调度。对于数据量较大的GIS服务,需要更多的存储空间和更快的数据传输速度来支持数据的高效处理和传输。而对于访问速度要求较高的GIS服务,需要更多的计算资源和更快的响应速度来保证服务的高效性和稳定性。
GIS服务节点规划是一个复杂的过程,需要综合考虑多方面因素,以便更好地满足用户的需求和提高系统的性能和稳定性。

GIS服务在云原生环境下的调度手段
(1)伸缩服务节点
按需对服务节点进行手动或动态伸缩。例如,当一个服务节点上发布了过多服务实例时,可以采取增加节点副本数,让服务节点能够承载更多服务实例。
手动伸缩:用户自行设置伸缩后的节点个数,服务节点会增加/减少至设定的个数。
动态伸缩:用户设置相应的指标,服务节点会根据负载情况自行伸缩节点个数。如不再需要动态伸缩,可点击服务节点名称旁的按钮删除。
(2)重新指定服务节点
将服务实例调度到任意一个或多个服务节点上运行,也可以新增服务节点。例如,某个服务节点承载了几个大数据量的服务实例时,可以将部分服务实例调度至其他服务节点运行,为当前服务节点减负。
(3)调整服务节点规格
按需修改节点CPU及内存大小。
(4)调整服务节点承载的服务实例
调度服务实例,主动选择在该节点上运行的服务实例,按需调整服务节点的服务实例数。
GIS服务在云原生环境下的服务规划调度实践
(1)规划服务节点
①地区节点
分别建立成都市、绵阳市、乐山市服务节点,后续可将不同城市的数据发布到对应的节点上。服务创建完成后,可以通过修改别名的方式对服务节点进行区分,便于后续管理。

②服务类别(以成都市为例)
分别创建地图节点、数据节点、瓦片节点,并分别修改别名,便于后续的查找与管理。

(2)接入GIS服务
分别将地图服务、数据服务、瓦片服务发布到成都市-地图节点、数据节点、瓦片节点。



发布成功后,可以在服务节点概览中看到新增的服务实例数。

(3)服务初步调度优化
①调整服务节点副本数
【手动伸缩】

【动态伸缩】

②调整服务实例
在服务节点的资源监控中,观察到成都市-地图节点的CPU、内存占用率较高,可以对该节点的服务实例进行调整,减缓节点的压力;

新建一个备用节点,将成都市-地图节点部分服务实例迁移到备用节点承载。


③调整服务节点规格
针对资源占用较高的服务节点,还可以对其规格进行调整,让节点的承载能力更强。

④指定或新建节点运行某服务
如果已知某个服务数据量较大,可以直接在服务列表将它指定到其他服务节点运行,或者新建一个服务节点用于承载该服务实例,避免影响当前节点的其他服务实例。


以上是GIS服务的初步规划与调度,后续可以使用服务追踪、服务度量功能去掌握服务的流量情况,并以此做进一步的调度与优化。
相关文章:
云原生下GIS服务规划与设计
作者:lisong 目录 背景云原生环境下GIS服务的相关概念GIS服务在云原生环境下的规划调度策略GIS服务在云原生环境下的调度手段GIS服务在云原生环境下的服务规划调度实践 背景 作为云原生GIS系统管理人员,在面对新建的云GIS系统时,通常需要应对…...
VBA 宏For WPS(完整版)-供大家学习研究参考
VBE7.1安装方法: 适用于安装 WPS 2019 版本的 缺少 VBA 模块的 亲测可用,内含 VBA 7.1 安装顺序1、2、3、4按照顺序安装; 1.安装MSVCRTRedist\Release目录下32位的安装包,此安装包为运行时库 3.安装VBARedist\Release目录下32位的…...
【Linux】八、进程通信
进程通信的介绍 目的 数据传输:一个进程将它的数据发送给另一个进程; 资源共享:多个进程间共享资源; 通知事件:一个进程向另一个或一组进程发送消息,同时事件如,进程终止时要通知父进程…...
不同类型的软件企业该如何有效的管理好你的软件测试团队?
最近在网上发现一篇记录了2012年《[视频]作为测试经理如何有效管理好你的软件测试团队》的文字内容,感谢记录的人,我也保存一下。顺便将演讲中的PPT重点截图也放上来,一并保存了!。由于是现场速记,过度的口语化&#x…...
vue echart 立体柱状图 带阴影
根据一个博主代码改编而来 <template><div class"indexBox"><div id"chart"></div></div> </template><script setup> import * as echarts from "echarts"; import { onMounted } from "vue&…...
vscode远程linux安装codelldb
在windows上使用vscode通过ssh远程连接linux进行c调试时,在线安装codelldb-x86_64-linux.vsix扩展插件失败,原因是linux服务器上的网络问题,所以需要进行手动安装。 首先在windows上下载: codelldb-x86_64-linux.vsix;…...
【中间件篇-Redis缓存数据库08】Redis设计、实现、redisobject对象设计、多线程、缓存淘汰算法
Redis的设计、实现 数据结构和内部编码 type命令实际返回的就是当前键的数据结构类型,它们分别是:string(字符串)hash(哈希)、list(列表)、set(集合)、zset (有序集合),但这些只是Redis对外的数据结构。 实际上每种数据结构都有自己底层的…...
华为云优惠券介绍、领取入口及使用教程
华为云是华为的云服务品牌,致力于为用户提供一站式云计算基础设施服务。为了吸引用户,华为云经常推出各种优惠活动,其中就包括优惠券的发放,下面将为大家详细介绍华为云优惠券的作用、领取入口以及使用教程。 一、华为云优惠券介绍…...
OPTEE安全通告之CVE-2023-41325(Double free in shdr_verify_signature)
安全之安全(security)博客目录导读 目录 一、受影响版本 二、漏洞描述 三、问题触发 四、官方Patch修复...
第12章 关于 Micro SaaS 的结论
从时间和地点的自由到一种新鲜的独立感,开发 Micro SaaS 应用程序有很多好处。 获得 6 位数的订阅收入。辞掉我朝九晚五的令人丧命的工作。消除毫无意义的会议、办公室政治、混乱和救火。想工作就工作。随时随地使用我想要的任何技术工作。花更多时间陪伴家人。与我开发的应用…...
postman调用接口报{“detail“:“Method \“DELETE\“ not allowed.“}错误, 解决记录
项目是python代码开发, urls.py 路由中访问路径代码如下: urlpatterns [path(reportmanagement/<int:pk>/, views.ReportManagementDetail.as_view(), namereport-management-detail),] 对应view视图中代码如下: class ReportManagementDetail(GenericAPIView):"…...
基于单片机的线路差动保护系统设计
摘 要 随着我国微型电子技术和嵌入式系统的发展,目前行业内相对比较传统的线路差动保护系统无法满足客户的需求。为了改进传统线路差动保护系统在控制上得短板问题,在本次毕业设计中,将使用相对先进、快捷、智能的控制机制。该系统的控制大脑…...
vscode 快速打印console.log
第一步 输入这些 {// Print Selected Variabl 为自定义快捷键中需要使用的name,可以自行修改"Print Selected Variable": {"body": ["\nconsole.log("," %c $CLIPBOARD: ,"," background-color: #3756d4; padding:…...
drawio连接线的样式设置
drawio是一款强大的图表绘制软件,支持在线云端版本以及windows, macOS, linux安装版。 如果想在线直接使用,则直接输入网址draw.io或者使用drawon(桌案), drawon.cn内部完整的集成了drawio的所有功能,并实现了云端存储,以及在线共…...
【力扣题:循环队列】
文章目录 一.题目描述二. 思路解析三. 代码实现 一.题目描述 设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。 循环队列的一个好…...
配置开启Docker2375远程连接与解决Docker未授权访问漏洞
一、配置开启Docker远程连接 首先需要安装docker,参考我这篇文章:基于CentOS7安装配置docker与docker-compose 配置开启Docker远程连接的步骤: //1-编辑/usr/lib/systemd/system/docker.service 文件 vim /usr/lib/systemd/system/docker.service //2…...
土木非科班转码测开,斩获10家大厂offer
大家好,我是洋子 24届秋招基本已经落下了帷幕,各大互联网大厂基本也开奖完毕,还没有拿到满意offer的同学也不要灰心,积极备战明年的春招。另外,25届想要找暑期实习的同学也可以开始准备起来了,基本大厂在春…...
HarmonyOS 高级特性
引言 本章将探讨 HarmonyOS 的高级特性,包括分布式能力、安全机制和性能优化。这些特性可以帮助你构建更强大、更安全、更高效的应用。 目录 HarmonyOS 的分布式能力HarmonyOS 的安全机制HarmonyOS 的性能优化总结 1. HarmonyOS 的分布式能力 HarmonyOS 的分布…...
Spring整合redis的key时出现\xac\xed\x00\x05t\前缀问题
AutowiredRedisTemplate redisTemplate;User usernew User(5,"tomhs","tttt");ValueOperations opsForValue redisTemplate.opsForValue();//存放key,opsForValue.set("user"user.getId(),user);//读取数据;System.out.println(opsForValue.get…...
centos 6.10 安装 tcmalloc
安装 libunwind-1.6.2 下载地址 解压文件 cd libunwind-1.6.2 ./configure make && make install另一种方式 从 github 上下载的项目, 在执行autoreconf -i 时一直报错,libtool 未定义, 要先在当前目录执行 libtoolize,再执行 au…...
OpenCV实战:从相机响应函数(CRF)到HDR图像合成的完整流程解析
1. 相机响应函数(CRF)基础解析 第一次听说相机响应函数(CRF)时,我也是一头雾水。简单来说,CRF就是描述相机如何把真实世界的光线强度(L)转换成图像像素值(B)的数学关系。想象一下,你拿着手机对着同一个场景拍三张照片:一张很暗、一…...
如何用OpenShamrock打造智能QQ机器人:从零开始的完整指南
如何用OpenShamrock打造智能QQ机器人:从零开始的完整指南 【免费下载链接】OpenShamrock A Bot Framework based on Xposed with OneBot11 项目地址: https://gitcode.com/gh_mirrors/op/OpenShamrock OpenShamrock是一款基于Xposed框架实现的QQ机器人开发工…...
数据库索引原理:B+树与哈希索引的深度对决
数据库索引原理:B树与哈希索引的深度对决在数据库的世界里,索引是提升查询性能的“核武器”。如果把数据库表比作一本厚厚的书,那么索引就是书中的目录。没有目录,想要找到特定的知识点只能一页页翻找(全表扫描&#x…...
工控机驱动安全自查:5分钟用DriverView揪出可疑第三方驱动(附分析技巧)
工控机驱动安全自查:5分钟用DriverView揪出可疑第三方驱动(附分析技巧) 工业自动化设备的稳定运行离不开安全的驱动环境。想象一下,当你负责的生产线突然出现不明原因的停机,经过层层排查,最终发现是一个来…...
拦截器与 JWT 联合使用详解
1. 核心概念1.1 什么是 JWT?JWT 是一个开放标准(RFC 7519),用于在各方之间以 JSON 对象的形式安全地传输信息。该信息可以被验证和信任,因为它是数字签名的。JWT 结构:Header(头部)&…...
Java协议解析性能瓶颈诊断清单(附JFR火焰图+ByteBuf内存泄漏定位实录)
第一章:Java协议解析性能瓶颈诊断清单(附JFR火焰图ByteBuf内存泄漏定位实录)协议解析层是Netty等高性能网络框架的核心路径,其性能劣化往往表现为CPU尖刺、GC频发或连接延迟陡增。以下为一线实战验证的诊断清单,覆盖JF…...
从抓包实战到协议栈:深入解析DDS核心报文与通信机制
1. 从HelloWorld抓包开始认识DDS 第一次接触DDS协议时,很多人会被各种专业术语搞得晕头转向。其实最快的学习方式就是从实际案例入手——就像我当初用Fast DDS的HelloWorld示例做实验那样。这个经典案例包含一个发布者和一个订阅者,正好能展示DDS最核心…...
2026年三维扫描仪选购指南:专业厂家如何选,这几点是关键
在工业4.0与智能制造浪潮的推动下,三维扫描技术已成为产品设计、逆向工程、质量检测等领域的核心工具。面对市场上琳琅满目的品牌与型号,如何选择一台真正适合自身需求、性能可靠的三维扫描仪,成为众多工程师、设计师和企业决策者面临的难题。…...
GeographicLib:高精度大地测量计算C++库架构解析与实战指南
GeographicLib:高精度大地测量计算C库架构解析与实战指南 【免费下载链接】geographiclib Main repository for GeographicLib 项目地址: https://gitcode.com/gh_mirrors/ge/geographiclib GeographicLib是一个专为大地测量和地理空间计算设计的C库…...
CLAP音频分类环境部署:Python3.8+PyTorch+Gradio一键配置指南
CLAP音频分类环境部署:Python3.8PyTorchGradio一键配置指南 想不想让电脑“听懂”声音?比如,上传一段音频,它就能告诉你这是狗叫、猫叫还是汽车鸣笛。这听起来像是科幻电影里的场景,但现在,借助一个叫CLAP…...
