- DOI:
10.13738/j.cnki.acc.qklw60536
- 专辑:
科学Ⅰ辑;信息科技
- 专题:
信息、科学;综合科技
- 分类号:
G90;N92
摘要:在信息化发展的进程中软件发挥基础支撑作用,气象业务软件是信息技术、数据、算法的关键载体,通过气象业务软件的集约化建设,以气象大数据云平台为基座,设计监测、预报、服务等软件提供业务服务,实现气象业务上下联动、左右贯通。本文以西藏冰川站解码入库组件为例,完成该算法的全生命周期管理方案设计,为西藏气象部门其他业务组件全生命周期管理提供理论依据。
关键词:气象组件、算法、冰川站、全生命周期
研究内容
为提高算法建设的集约性,缩短数据与应用的距离,提升算法管理、部署和上线应用效率,依托气象大数据云平台,遵循统一认证系统规范,依托中式仿真环境CloudeIDE或者本地编辑器编写算法代码,通过容器技术提供算法开发测试的基础环境,依托镜像资源管理实现容器到镜像的在线打包,算法在中试仿真环境加工调度运行时通过后台采集算法的运行信息进行质量评估生成准入报告,算法在加工调度运行并满足准入评估后,可以向应用仓库进行迁移。
依托气象软件应用仓库建设组件全生命周期管理平台,系统功能组成:
(1)组件管理模块
组件管理模块包括组件注册、组件审核、组件版本管理、组件调用、组件注销等功能。
(2)组件可视化模块
组件可视化模块提供全方位、多样化地展示平台所共享的组件资源,提供组件分类展示、组件搜索、组件下载、组件评价、组件排名。
(3)组件支持模块
组件支持模块提供用组件管理提供基础功能支持和辅助管理相关的功能,包括模板管理、用户管理、用户空间等功能。
架构设计
组件全生命周期管理平台(应用仓库)采用分层设计原则进行设计,系统功能架构依次分为基础资源层、数据存储层、支撑层、应用层和业务层五个层面,系统功能架构设计图如下图所示。
各个层的功能如下:
基础资源层:提供平台所需的网络资源、服务器资源、存储资源、计算资源,由气象大数据云平台底层架构提供;
数据存储层:包含应用仓库组件的元数据存储、算法实体存储、配置信息存储等,采用JDBC、共享、接口调用等多种方式获取数据;平台基于天擎专题库构建组件全生命周期管理平台算法库元数据存储,基于天擎存储资源(NAS)搭建算法实体的存储;
支撑层:实现组件全生命周期管理平台应用的支撑功能。采用docker容器技术,提供高性能可伸缩的容器应用管理服务,实现算法镜像的管理;同时,提供健康监控和应用告警与行为记录的功能;
应用层:支持算法全生命周期管理服务,包含组件管理模块、组件可视化模块、组件支持模块、组件示例模块。其中组件管理模块实现组件注册、组件审核、组件版本管理等功能;组件可视化模块包括组件分类展示、组件搜索、组件下载、组件评价、组件排名等功能;组件支持模块实现模板管理、用户管理、用户空间等功能,提供对组件管理的支持服务。
业务层:平台为全省的气象业务、科研以及运维人员,同时面向所有内网业务系统提供服务。
技术路线
SpringBoot框架可以简单的理解为是一个“增强版的SpringMVC框架,极大程度的简化了各种配置,默认就已经集成了绝大部分常用的依赖”。应用仓库为了集成“天擎”多个子业务系统的不同业务流程,选取了SpringBoot作为底层框架,通过预定义配置和自动配置简化配置过程,使开发人员能够快速设置和配置应用程序。并且SpringBoot提供了快速构建项目的方法,使开发人员能够专注于业务逻辑实现,从而提升程序开发和部署的效率。
应用仓库代理程序会进行国家级部署以及省级部署,基于Apollo对配置进行管理可以有效的缩减开发人员的工作量,基于Apollo配置中心,可以有效的解决国省资源共享部署中产生的配置无法修改的问题。
3.3基于微服务架构实现平台系统功能建设
气象应用仓库采用微服务架构进行设计,通过将系统功能拆分为一个个业务功能,每个业务功能采用微服务方式进行实现,既保证系统功能之间的低耦合性,又使系统具备较好的灵活性和可扩展性。
微服务的核心是SpringCloud。SpringCloud功能包括分布式/版本化配置、服务注册和发现、路由、服务与服务间的调用、负载均衡、断路器、分布式消息传递等。SpringCloud是一系列框架的集合。它具有高质量、稳定性、可持续性、便捷性等特性,使用Spring Cloud架构可以节省系统基础模块的开发,并且可以很容易的进行微服务系统的实施。
全生命周期管理
4.1准入评估
对算法的响应时间、吞吐量、稳定性、可扩展性、缓存策略、日志监控等方面进行准入评估;根据测试结果和数据分析,形成评估报告。
4.2算法注册
算法注册其功能是填写算法基本信息、算法说明、输入输出、贡献者信息、参数信息、运行环境、运行命令等,同时将算法相关的算法源码包、算法执行包、算法说明文档、第三方依赖库上传至仓库平台或将算法容器镜像上传至仓库平台。正确的进行算法注册并通过管理员审核后,该算法即可进入至算法库,可以在算法清单中查看。
4.3算法命名
气象业务组件命名遵循一定的规则,根据组件的分层、分类及分级标签进行分段编码命名。组件的名称由5部分代码组成,规则如下:
组件分层]-[组件一级分类]-[组件二级分类]-[组件资料类型标签]-[扩展字段]
组件命名时取各代码的英文缩写,各代码之间用中划线“-”连接。
结合西藏冰川站解码入库算法对该算法进行命名:
MBC-MFP-TXTFP-SURF-DXGS 其中DXGS为Decoding and warehousing algorithm of Xizang Glacier Station缩写
4.4组件安全扫描
对组件的镜像包进行解压,调用安全扫描服务/软件对组件的各个文件进行安全扫描,防止出现安全漏洞。
4.5组件调用
提供发布的组件服务信息,提供接口在线测试工具,组件通过注册、评估入库后申请访问(调用)组件,申请完毕后通过一键同步的功能将组件部署至本省天擎(DPL加工流水线),在便捷用户的使用。
4.6组件分类展示
支持对平台已注册、部署、发布的组件能通过可视化页面进行集中统一展示,并能实现算法使用用途、算法语言、算法功能等的分类查询并做展示。
4.7组件搜索
算法信息查询通过算法ID或算法名称查询返回算法基本信息和参数信息。系统自动检索符合要求的信息,并做分类展示。关键字在搜索结果中呈高亮显示。点击任意一条搜索结果,页面可跳转到对应资源的详细页面。
4.8组件排名
支持对组件按照组件的评分进行排名排序,支持用户筛选组件分类后再进行排名,方面用户快速找到需要的组件。
4.9模板管理
针对不同语言、不同组件类型提供组件注册模板,提供对多种服务协议、多种操作系统和多种开发语言的算法调用示例模板下载。用户编写完成调用示例模板后上传到平台进行注册。
4.10用户管理
平台通过接口对接全省统一认证系统,实现由全省统一认证系统一键跳转到该平台,由全省统一认证系统提供平台用户体系的建设与维护。
平台用户分为管理员账户、个人账户、游客三种身份,三种用户权限不同,默认以游客身份访问平台。用户不同权限由平台后端管理系统统一管理。
结束语
西藏冰川站解码入库算法组件通过该方案的设计能够有效减少组件重复开发建设需求,同时符合气象软件集约化建设要求,为其他系统建设、科研人员开发等工作上提供了便利,同时为其他业务组件的全生命周期管理提供了参考依据。
参考文献:
[1]郝江波,唐卫,王慕华,丰德恩,赵瑞,袁亚男.基于微服务的气象信息决策职称系统重构与实践[J].气象科技,2020,(06):829-835
[2]吴秀娟,张宁,仁丹.计算机软件技术在气象信息服务中的应用[J].信息与电脑(理论版),2020,(11):19-21.
[3]张雪斌.民航气象信息系统中中间件的使用与设计[D].内蒙古大学,2019.
作者简介:程铭楷(1997.11 )男,汉族,河北省涉县人,本科学历,助理工程师,从事研究方向 :气象信息技术。
相关文献推荐
- 节点文献
- 读者推荐
- 相关基金文献
- 关联作者
- 相关视频
- 批量下載
