基于微服务的数字孪生底层架构研究

中水淮河规划设计研究有限公司 | 黄姗姗,许洪健

【摘要】数字孪生技术是辅助“智慧水利”制定科学决策的关键技术,可以有效地解决由“信息水利”到“智慧水利”转变所带来的难题。本文阐述了数字孪生  中涉及的相关架构技术,分析各种技术的优缺点,结合水利工程实际需求,提出基于微服务的数字孪生底层架构体系,该架构扩展灵活、故障率低,适用于水利工程系统数据庞大、站点繁多、距离较远等特点,文中针对GIS和BIM服务容器的实施给出了具体方案,以期为解决数字孪生在应用落地过程中遇到的层层问题提供一种可行的解决方案。

【关键词】水利工程;数字孪生;微服务;底层架构


1 微服务架构技术

微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功能分解到各个离散的服务中,达到同一领域在同一组服务中,从而降低系统的耦合性,以实现对解决方案的解耦,从而提供更加灵活的服务支持。

传统的开发方式中,以Web来说,是把所有功能打包在一个包里,部署在一个容器里,里面包含该单体应用的DO/DAO、DLL、Service、UI等所有逻辑。这种开发方式优点在于开发简单、管理集中,功能都在本地,没有分布式的管理和调用消耗。缺点是效率低下,同一个项目下改代码容易发生冲突、相互等待;代码耦合度高,不利于培训和延用;构建时间较长,较小的改动可能都要重构整个项目;无法满足高并发下的业务扩展需求。微服务的架构设计是从底层将应用进行有效拆分,按照业务而不是技术来划分,外部低耦合、内部高聚合,构建强服务个体、弱服务通信,实现敏捷开发和部署。

通常搭建微服务架构,需要在后台和UI之间架设一个网关,一般称API Gateway,它能够提供统一的服务入口,前台能够清楚的找到这个网关,但是前台不需要关心它是属于哪个站点或者域名下的哪个端口,这个网关再通过服务发现或者其他内部规则找到相应地址。网关对后台服务进行整理聚合,节省流量,防止堵塞,同时还提供安全、过滤等API管理功能。这些优点使得前端应用能够更加快速的搭建,特别是当前台是移动端应用的时候,能够更加便捷的适应业务变化的节奏。

水利工程数字孪生是一个涉及多领域多应用的大型系统,后台的数据和服务庞大而繁杂,可根据微服务架构,将其拆分成GIS、BIM、管理、流程等多个领域的微服务,每个微服务都是一个可扩展组件,满足服务等级协议。单个组件功能明确、业务精炼,再围绕这些组件来创建应用,这些应用可独立的进行开发、管理和迭代。最终形成一个功能强大且容易交付的底层架构。

2 容器技术

容器技术是一种和宿主机共享硬件资源和操作系统,但是包含应用和其所有的依赖包,实现资源动态分配的技术。它是实现操作系统虚拟化的一种途径,可以让资源在隔离的进程中运行应用程序及其依赖关系。与虚拟机的不同点在于,容器不需要有自己的操作系统,也不需要将资源预分配过来并完全占用。Docker 作为目前最流行的开源容器引擎,具有开箱即用、快速部署、资源隔离、可移植性强等特性,可以在短时间上手使用,实现容器化部署应用。

开发过程中按照已划分好的服务领域,在各自容器中开发,如GIS服务容器、BIM服务容器、管理服务容器、流程服务容器等,容器可以把每个领域的代码、配置文件和相关依赖库进行打包,从而确保在任何环境下的运行都是一致的,该特性非常完美的解决了项目中因开发环境和生产环境的不同而导致的各种问题,生产环境也不用为了特定项目而安装大量依赖,避免了重复劳动。

水利工程的数字孪生中,数据庞大、站点繁多、距离较远,尤其要考虑前端感知数据、地理信息数据和模型信息等大体量数据,采用增加带宽、服务器或者GPU等方式,是一种重复的堆砌,虽然能缓解一部分资源阻塞问题,但更应加大投入研究如何优化底层逻辑和数据结构,这样才能更加有效的解决实际问题。

3 GIS服务容器

GIS是以计算机软硬件为支撑,采集、存储、管理、分析和显示地球表面空间信息的信息体系,利用二三维GIS技术,可以建立地表的立体模型,显示建设项目的地质地貌和地表地貌。GIS技术具有良好的空间解析能力和立体可视性,目前已经被广泛地用于大规模的基建项目。例如水利工程中城市地表水厂及输水管道等监控平台的建设,采用了GIS的地理地图技术,结合城市供水需求,分析水量供应使用情况、管道分布等实际过程;明确预警值及相关指标的范围,实时预警水量水质超标范围。

GIS因其自身独特的专业性,在大型水利工程信息化系统中,是信息载体的底图,承担着整个工程信息可视化基石的重要角色。GIS数据具有体量较大、复杂处理等特点,这些特点导致其应用上具有一定局限性,为方便信息数据的流转,需要单独搭建GIS服务容器,该容器负责处理GIS数据的集成服务,能够调用各类处理方式,包括数据转换、坐标转换、项目属性信息,以适应上级应用的不同需求。同时应在该容器中配置相关的依赖和配置项,以便随时移动至生产环境。

GIS服务容器可设置地图服务、底图调用、配置项设置、数据处理等模块。其中,GIS服务可搭配第三方成熟方案,不同的第三方GIS服务,其配置也不同,GIS服务容器可整合不同的第三方服务,开发人员可任意选择不同配置,快速对接服务,无需重复代码;底图调用接口涉及在线地图、离线地图、倾斜摄影、点云等类型数据,需要对不同数据做不同配置,形成不同接口或组件;配置项设置包括坐标、高程、项目信息、模型信息等,录入该类数据,可同步到项目中,提高数据共享率;数据处理接口包括坐标转换、点线面等数据的处理。

该类GIS服务容器的搭建不仅能解决业务流程与业务数据耦合问题,而且面对不同业务需求的系统能够快速搭建形成模块,减少重复劳动,降低开发成本,真正实现GIS服务容器的最大效益。

4 BIM服务容器

BIM技术在水利建设中的运用,可以提高工程的质量,促进工程建设和技术的发展,更好的解决建筑过程中出现的各类问题。BIM技术在水利工程中的运用,可以促进工程的进一步完善和深入,从而达到对水利工程量的准确估算。在水利工程的规划和工程建设中,利用BIM技术可以有效地将所需的各种材料进行有效地配置,从而达到最大限度地利用各种不同的材料。BIM技术的运用,为水利建设项目的实施开辟了一个新的纪元,实现了施工技术和设计的数字化、智能化,从而实现了对项目的质量、成本和施工指标的合理调控。另外,运用BIM技术可以使水利工程建设更加规范化和科学化。

在水利的设计和建设过程中,BIM模型通常需要经过多次修改和审核,定稿后的模型再次应用到软件中时往往具有滞后性,或者实用性不强,需要一套快速灵活的处理,以适应模型的多次修改和上传。根据BIM模型特征,整合一套从模型到应用的详细处理过程,可搭建低代码配置方式,构建一个模型处理中台,以达到模型的快速处理,组件的快速复用,提升工作效率,节约开发成本。处理过程的每个步骤封装成通用组件,预留关键参数位置。BIM模型设计者在设计完成后,可在该类平台上进行处理,同时完成各个模型信息的填写、校验、审核等工作,为上层应用提供精确的特征数据[1]。

BIM服务容器包含模型数据处理接口、轻量化处理接口、配置项设置等模块。其中,模型数据处理接口可设置模型格式校验接口、坐标统一接口、模型专业信息接口;轻量化处理接口,可封装不同类型轻量化引擎,根据实际需求选择调用,输出轻量化后的相关数据,再对不同格式属性数据进行提取,继续进行开发;配置项设置可包括坐标、高程、项目信息、模型信息、构件信息、材质信息、专业信息等,录入该类数据,同步到项目的业务组件中,实现不同业务需求的数据共享。 

结语:实现水利工程的数字孪生,最基本的目的是服务于公众,以便更好地服务于人民,满足他们的生活需要。数字孪生技术的应用也标志着“信息水利”向“智慧水利”迈出了关键一步。在大数据、云计算、物联网、人工智能等新技术蓬勃发展的背景下,结合水利工程的实际需求,深入研究先进主流的架构技术,为数字孪生的落地提供强有力的支撑,必将引领水利工程运行管理进入更加智慧的新阶段。