TPRI-DMP平台介绍

2023-12-29 14:44
文章标签 平台 介绍 dmp tpri

本文主要是介绍TPRI-DMP平台介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

TPRI-DMP平台介绍

  1. TPRI-DMP平台概述

TPRI-DMP为华能集团西安热工院自主产权的工业云PaaS平台,已经过13年的发展和迭代,其具备大规模能源电力行业生产应用软件开发和运行能力。提供TPRI-DMP平台主数据管理、业务系统开发与运行、应用资源管理与运维监控等功能,具备应用弹性伸缩、承载大规模并发、持续开发与集成的能力;制定统一的平台开发规范和流程,实现业务系统代码规范管理,实现集成、测试、部署与运维的标准化;大数据中心作为TPRI-DMP平台的数据支撑,由公共业务数据库(主数据)、各业务系统数据库、数据采集平台、数据仓库、自定义报表工具、BI分析工具、深度分析工具等组成,为云平台提供高可靠、高性能、开放共享的数据服务。

  1. 平台架构

TPRI-DMP平台在服务器虚拟化设施基础上,采用当前主流技术,通过Kubernetes容器集群管理服务、中间件服务、DevOps工具、轻量级容器管理工具、数据库服务、应用基础服务以及大数据中心,建立起一整套包含持续集成、持续交付和持续部署的、满足能源企业应用系统开发、部署、运行及维护的一整套PaaS平台。

    1. 容器平台

TPRI-DMP平台的容器平台包括K8S集群管理、容器面板、集群监控、日志收集和查看、容器镜像、容器编排等组件。通过容器云技术组件实现平台容器上规模后的统一编排、自动调度和实时监控,保证整个服务集群的可靠运行。

TPRI-DMP平台容器平台的核心是基于K8S开源的容器编排系统, 通过Rancher管理K8S集群中的各个资源对象。可以实现服务发现和负载均衡、存储编排、弹性伸缩、自动部署和回滚、自动完成装箱计算、自我修复、密钥与配置管理。TPRI-DMP平台运维监控主要包含状态监控、日志管理两部分。状态监控负责收集主机、K8S集群的资源使用状态,并通过图表展示结果。状态监控主要由两部分组成,分别是收集状态的Prometheus,展示状态结果的Grafana。日志管理采用EFK,EFK由ElasticSearch、Fluentd和Kiabana三个工具组成。其中Elasticsearch是一款分布式搜索引擎,能够用于日志的检索,Fluentd是一个实时开源的数据收集器,而Kibana 是一款能够为Elasticsearch 提供分析和可视化的 Web 平台,EFK的组合为日志数据提供了分布式的实时搜集与分析的监控系统。

    1. DevOps

平台提供“开发运维一体化”DevOps的运维方式,实现研发、测试、运维的一体化。DevOps重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

TPRI-DMP平台DevOps主要功能是管理开发人员提交或者合并的代码,触发构建工具实现代码的自动构建、自动打包、自动部署一整套流程。开发人员通过Git提交代码至Gitlab,触发Jenkins自动开始代码构建,在构建的过程中需要的依赖包从私有源仓库Nexus拉取,构建完成后打包镜像推送至Harbor,拉取镜像和配置文件部署应用至K8S集群。在这个过程中根据不同分支预设的不同脚本,推送的位置也不同,执行的方式也不同,部署的环境也不同,以实现部署的灵活性和自动化。

TPRI-DMP的DevOps还包括前、后端低代码工具,均为西安热工研究院自主研发,拥有完全知识产权。

TPRI-DMP前端设计器

TPRI-DMP前端设计器基于Vue、Element UI进行开发,实现应用功能前端界面可视化开发,与后端TPRI-DMP平台通过RESTful接口方式进行数据交互。

TPRI-DMP后端设计器

平台后端业务流低代码工具是用来开发后端API的工具。其采用所见即所得的编辑方式,无需编写代码,只需要通过拖拽组件和线段连接,即可开发出标准的后端API接口,实现后台业务的高效开发。业务流低代码工具主要包括:组件库、业务流清单、画布等模块。

    1. 云中间件服务

TPRI-DMP平台提供各类云中间件服务,包括消息队列、分布式缓存、微服务开发治理框架、微服务开发集成平台、通知消息和基础数据服务,为云原生应用的开发提供通用和高效的运行机制。

为了确保应用系统之间的消息通讯以及异步调用,平台提供统一的消息中间件服务,中间件采用ActiveMQ,为了确保消息服务的高可用性,采用分布式集群部署模式。

平台提供统一的基于Redis的分布式缓存服务,运行于平台上的所有应用都可以通过该服务进行数据的缓存。为了确保缓存服务的高可用性以及效率问题,Redis采用集群模式进行部署。

微服务管理框架通过Istio来实现,Istio由控制平面和Envoy的数据平面共同构成了一个服务网格实现。其中,控制平面Pilot负责管理和配置代理来路由流量,并配置Mixer以实施策略和收集遥测数据;数据平面由一组以Sidecar方式部署的智能代理(Envoy)组成,这些代理可以调节和控制微服务及Mixer之间所有的网络通信。

这篇关于TPRI-DMP平台介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/549751

相关文章

深入理解Apache Kafka(分布式流处理平台)

《深入理解ApacheKafka(分布式流处理平台)》ApacheKafka作为现代分布式系统中的核心中间件,为构建高吞吐量、低延迟的数据管道提供了强大支持,本文将深入探讨Kafka的核心概念、架构... 目录引言一、Apache Kafka概述1.1 什么是Kafka?1.2 Kafka的核心概念二、Ka

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

在Android平台上实现消息推送功能

《在Android平台上实现消息推送功能》随着移动互联网应用的飞速发展,消息推送已成为移动应用中不可或缺的功能,在Android平台上,实现消息推送涉及到服务端的消息发送、客户端的消息接收、通知渠道(... 目录一、项目概述二、相关知识介绍2.1 消息推送的基本原理2.2 Firebase Cloud Me

MySQL中慢SQL优化的不同方式介绍

《MySQL中慢SQL优化的不同方式介绍》慢SQL的优化,主要从两个方面考虑,SQL语句本身的优化,以及数据库设计的优化,下面小编就来给大家介绍一下有哪些方式可以优化慢SQL吧... 目录避免不必要的列分页优化索引优化JOIN 的优化排序优化UNION 优化慢 SQL 的优化,主要从两个方面考虑,SQL 语

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

Python实现html转png的完美方案介绍

《Python实现html转png的完美方案介绍》这篇文章主要为大家详细介绍了如何使用Python实现html转png功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 1.增强稳定性与错误处理建议使用三层异常捕获结构:try: with sync_playwright(

Java使用多线程处理未知任务数的方案介绍

《Java使用多线程处理未知任务数的方案介绍》这篇文章主要为大家详细介绍了Java如何使用多线程实现处理未知任务数,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 知道任务个数,你可以定义好线程数规则,生成线程数去跑代码说明:1.虚拟线程池:使用 Executors.newVir

JAVA SE包装类和泛型详细介绍及说明方法

《JAVASE包装类和泛型详细介绍及说明方法》:本文主要介绍JAVASE包装类和泛型的相关资料,包括基本数据类型与包装类的对应关系,以及装箱和拆箱的概念,并重点讲解了自动装箱和自动拆箱的机制,文... 目录1. 包装类1.1 基本数据类型和对应的包装类1.2 装箱和拆箱1.3 自动装箱和自动拆箱2. 泛型2

四种Flutter子页面向父组件传递数据的方法介绍

《四种Flutter子页面向父组件传递数据的方法介绍》在Flutter中,如果父组件需要调用子组件的方法,可以通过常用的四种方式实现,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录方法 1:使用 GlobalKey 和 State 调用子组件方法方法 2:通过回调函数(Callb

Python进阶之Excel基本操作介绍

《Python进阶之Excel基本操作介绍》在现实中,很多工作都需要与数据打交道,Excel作为常用的数据处理工具,一直备受人们的青睐,本文主要为大家介绍了一些Python中Excel的基本操作,希望... 目录概述写入使用 xlwt使用 XlsxWriter读取修改概述在现实中,很多工作都需要与数据打交