CN112532413B - 基于微服务架构的业务支撑Saas***、方法、介质及设备 - Google Patents
基于微服务架构的业务支撑Saas***、方法、介质及设备 Download PDFInfo
- Publication number
- CN112532413B CN112532413B CN201910882533.XA CN201910882533A CN112532413B CN 112532413 B CN112532413 B CN 112532413B CN 201910882533 A CN201910882533 A CN 201910882533A CN 112532413 B CN112532413 B CN 112532413B
- Authority
- CN
- China
- Prior art keywords
- service
- micro
- module
- configuration
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/0836—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability to enhance reliability, e.g. reduce downtime
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/105—Multiple levels of security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种基于微服务架构的业务支撑Saas***、方法、介质及设备,所述基于微服务架构的业务支撑Saas***包括:业务支撑模块,用于将单体架构的业务模块解耦拆分,以得到业务单元;所述业务单元包括微服务;认证鉴权模块,用于通过设置安全令牌对所述服务调度网关建立统一认证鉴权;配置管理模块,用于针对所述业务支撑模块的微服务的配置文件建立集中配置管理;服务注册模块,用于对所述业务支撑模块中待发布的微服务建立服务注册发现,以供所述业务支撑模块中的其他微服务对发布的该微服务进行路由调用。本发明结合业务模块的特点进行伸缩,并解决原有***因全量部署导致耗时长、影响范围大、风险高、稳定性差、效率低,成本高的问题。
Description
技术领域
本发明属于大数据领域,涉及一种业务支撑***,特别是涉及一种基于微服务架构的业务支撑Saas***、方法、介质及设备。
背景技术
由于信息处理技术的不断发展,原有的业务支撑***采用单体架构设计,***包含的模块非常多,模块的边界模糊,依赖关系不清晰,代码质量参差不齐,由此使整个项目非常复杂。技术人员每次修改代码都涉及很大的工作量,甚至添加一个简单的功能,或者修改一个BUG都会造成隐含的缺陷,随着时间推移、需求变更和技术人员更迭,会逐渐形成应用程序的技术债务,并且越积越多,已使用的业务支撑***设计或代码难以修改。而且,原有的业务支撑***只能作为一个整体进行扩展,无法结合业务模块的特点进行伸缩,其全量部署的方式耗时长、影响范围大、风险高、稳定性差,以及开发人员的不断增加,开发效率越来越低,每次投产的人力成本和时间成本都逐渐增加。
因此,如何提供一种基于微服务架构的业务支撑Saas***、方法、介质及设备,以解决现有技术***复杂度高、技术债务积累、部署频率低、扩展能力受限、阻碍技术创新、开发成本高以及稳定性差等缺陷,成为本领域技术人员亟待解决的技术问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于微服务架构的业务支撑Saas***、方法、介质及设备,用于解决现有的业务支撑***复杂度高、技术债务积累、部署频率低、扩展能力受限、阻碍技术创新、开发成本高以及稳定性差的问题。
为实现上述目的及其他相关目的,本发明一方面提供一种基于微服务架构的业务支撑Saas***,所述基于微服务架构的业务支撑Saas***包括:业务支撑模块,与服务调度网关连接,用于将单体架构的业务模块解耦拆分,以得到业务单元;所述业务单元包括微服务;认证鉴权模块,与所述服务调度网关连接,用于通过设置安全令牌对所述服务调度网关建立统一认证鉴权;配置管理模块,与所述业务支撑模块以及服务调度网关连接,用于通过所述服务调度网关,针对所述业务支撑模块的微服务的配置文件建立集中配置管理;服务注册模块,与所述业务支撑模块以及所述服务调度网关连接,用于通过所述服务调度网关,对所述业务支撑模块中待发布的微服务建立服务注册发现,以供所述业务支撑模块中的其他微服务对发布的该微服务进行路由调用。
于本发明的一实施例中,所述业务单元包括以下模块的一种或多种组合:内容管理单元,用于支持大小屏直播点播内容中多标签、多类目内容视频的管理配置;编排管理单元,用于通过组合分类、排序和/或搜索的方式编排大小屏直播点播内容;广告管理单元,用于接入视频、图片、连接、apk下载及第三方广告,以在各页面广告推荐位呈现给用户;支付中心单元,用于提供统一下单接口,以实现分渠道统一下单和统一支付流程;用户中心单元,用于实现用户注册、登录及第三方登录;***管理单元,用于根据用户授权的细粒度权限控制通用平台;存储单元,用于提供统一上传接口,扩展第三方存储服务。
本发明另一方面提供一种基于微服务架构的业务支撑Saas方法,包括:通过业务支撑模块将单体架构的业务模块解耦拆分,以得到业务单元;所述业务单元包括微服务;通过认证鉴权模块设置安全令牌对服务调度网关建立统一认证鉴权;通过配置管理模块针对所述业务支撑模块的微服务的配置文件建立集中配置管理;通过服务注册模块对所述业务支撑模块中待发布的微服务建立服务注册发现,以供所述业务支撑模块中的其他微服务对发布的该微服务进行路由调用。
于本发明的一实施例中,所述通过业务支撑模块将单体架构的业务模块解耦拆分,以得到业务单元的步骤包括:根据业务需求、投入产出、组织结构、***扩展、软件发布和信息安全一方面或多方面组合的拆分需求将单体架构的业务模块解耦拆分。
于本发明的一实施例中,所述业务单元包括以下模块的一种或多种组合:内容管理单元,用于支持大小屏直播点播内容中多标签、多类目内容视频的管理配置;编排管理单元,用于通过组合分类、排序和/或搜索的方式编排大小屏直播点播内容;广告管理单元,用于接入视频、图片、连接、apk下载及第三方广告,以在各页面广告推荐位呈现给用户;支付中心单元,用于提供统一下单接口,以实现分渠道统一下单和统一支付流程;用户中心单元,用于实现用户注册、登录及第三方登录;***管理单元,用于根据用户授权的细粒度权限控制通用平台;存储单元,用于提供统一上传接口,扩展第三方存储服务。
于本发明的一实施例中,所述通过认证鉴权模块设置安全令牌对服务调度网关建立统一认证鉴权的步骤包括:在Spring Security安全框架的基础上,结合Auth2.0开放网络的授权标准以及Json web token的跨域认证对安全令牌进行设计,以实现统一的安全认证与鉴权。
于本发明的一实施例中,所述通过配置管理模块针对所述业务支撑模块的微服务的配置文件建立集中配置管理的步骤包括:搭建Nacos配置中心;在所述Nacos配置中心的Nacos Dashboard后台中发布微服务的配置文件;在已发布所述配置文件的微服务中集成配置中心sdk;启动该微服务后,通过所述配置中心sdk获取所述Nacos配置中心发布的配置文件。
于本发明的一实施例中,所述通过服务注册模块对所述业务支撑模块中待发布的微服务建立服务注册发现的步骤包括:搭建Nacos注册中心;在微服务中集成注册中心sdk;通过所述注册中心sdk向所述Nacos注册中心注册服务;在该微服务以外的其他微服务需要使用该微服务所注册的服务时,通过其他微服务的注册中心sdk从所述Nacos注册中心获取注册服务的元数据,以实现各个微服务之间的调用及负载均衡。
本发明又一方面提供一种介质,其上存储有计算机程序,该程序被处理器执行时实现所述基于微服务架构的业务支撑Saas方法。
本发明最后一方面提供一种设备,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述设备执行所述基于微服务架构的业务支撑Saas方法。
如上所述,本发明所述的基于微服务架构的业务支撑Saas***、方法、介质及设备,具有以下有益效果:
(1)交付速度较快,服务拆分后,各个服务可以独立并行开发、测试、部署,交付效率提升,产品的更新速度会更快,用户体验更好。代码规模越大,业务支撑***的优势越明显。(2)故障隔离范围为进程级,服务独立运行,通过进程的方式隔离,使故障范围得到有效控制、架构变得更简单可靠。根据业务的重要程度划分服务,把核心的业务划分为独立的服务,这样从数据库到服务可以保持有效的故障隔离,进而保持稳定。(3)整体可用性高,业务支撑***由于故障范围得到有效隔离,因此整体可用性更高,降低一点故障对整体的影响。(4)沟通效率高,业务支撑***按业务构建全功能团队,不会出现决策瓶颈点,缩小了沟通规模,提高了沟通效率。(5)技术栈选择灵活,如果某个业务需要独立的技术栈,可以通过服务划分、接口集成的方式实现。(6)可扩展性灵活,业务支撑***可以根据服务对资源的要求以服务为粒度扩展,符合AKF扩展立方体这一可扩展模型中的Y轴扩展,而原***只能整体扩展,只能做到AKF扩展立方体中的X轴扩展。(7)可重用性高,业务支撑***可以实现以服务为粒度通过接口共享重用。(8)可较容易地实现业务复杂性分解难度,业务支撑***通过将业务分解为更多的服务,业务边界更清晰,更容易把一个复杂的方案分解为简单的方案。(9)产品创新复杂度容易,业务支撑***以服务为粒度独立演进,团队有更多的自主决策权,更多的试错机会,更利于创新。
附图说明
图1显示为本发明的基于微服务架构的业务支撑Saas***于一实施例中的结构连接示意图。
图2显示为本发明的基于微服务架构的业务支撑Saas***于一实施例中的微服务示意图。
图3显示为本发明的基于微服务架构的业务支撑Saas***于一实施例中的内容管理界面示意图。
图4显示为本发明的基于微服务架构的业务支撑Saas***于一实施例中的编排管理界面示意图。
图5显示为本发明的基于微服务架构的业务支撑Saas***于一实施例中的广告管理界面示意图。
图6显示为本发明的基于微服务架构的业务支撑Saas***于一实施例中的支付中心界面示意图。
图7显示为本发明的基于微服务架构的业务支撑Saas***于一实施例中的***管理界面示意图。
图8显示为本发明的基于微服务架构的业务支撑Saas***于一实施例中的用户中心界面示意图。
图9显示为本发明的基于微服务架构的业务支撑Saas方法于一实施例中的原理流程图。
图10显示为本发明的基于微服务架构的业务支撑Saas方法于一实施例中的微服务架构图。
图11显示为本发明的基于微服务架构的业务支撑Saas方法于一实施例中的认证鉴权界面示意图。
图12显示为本发明的基于微服务架构的业务支撑Saas方法于一实施例中的配置管理流程图。
图13显示为本发明的基于微服务架构的业务支撑Saas方法于一实施例中的配置管理界面示意图。
图14显示为本发明的基于微服务架构的业务支撑Saas方法于一实施例中的服务注册流程图。
图15显示为本发明的基于微服务架构的业务支撑Saas方法于一实施例中的服务注册界面示意图。
元件标号说明
1 基于微服务架构的业务支撑Saas***
11 业务支撑模块
111 内容管理单元
112 编排管理单元
113 广告管理单元
114 支付中心单元
115 ***管理单元
116 用户中心单元
12 认证鉴权模块
13 配置管理模块
14 服务注册模块
15 服务调度网关
S91~S94 基于微服务架构的业务支撑Saas方法步骤
S931~S934 基于微服务架构的业务支撑Saas方法的配置管理步骤
S941~S944 基于微服务架构的业务支撑Saas方法的服务注册步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本发明所述基于微服务架构的业务支撑Saas***、方法、介质及设备通过***按照业务来划分服务,单个服务代码量小,业务单一,解决了原来***复杂性高的问题。通过***不同的功能分为不同的服务,***内服务之间耦合性低,相互影响小,修改代码风险性低,解决了原来***技术债务的问题。通过***中不同的服务单独部署,只要构建和部署有变动的服务即可,解决了原来***部署频率低的问题。***提供一套服务治理的解决方案,***内服务之间不耦合,可以随时加入和剔除服务,同时也高内聚,服务间可组合性来实现多个业务流程,解决了原来***扩展能力受限的问题。***的每个微服务工程由不同的团队人员开发,团本成员可以有自己的开发语言和架构,技术革新,解决了原来***阻碍技术创新的问题。***的每个微服务有自己独立单一的功能,几个服务通过组合成业务流程,不同项目的某些公共功能,例如支付功能,用户功能无需重复开发,直接调用即可,解决了原来***开发成本高的问题。***的服务独立运行,通过进程的方式隔离,使故障范围得到有效控制、***变得更简单可靠。根据业务的重要程度划分服务,把核心的业务划分为独立的服务,这样从数据库到服务可以保持有效的故障隔离,进而保持稳定,解决了原来***稳定性差的问题。
以下将结合图示对本实施例所提供的基于微服务架构的业务支撑Saas***、方法、介质及设备进行详细描述。
如图1所示,于一实施例中,所述基于微服务架构的业务支撑Saas***1包括:业务支撑模块11、认证鉴权模块12、配置管理模块13、服务注册模块14和服务调度网关15。
所述业务支撑模块11与服务调度网关15连接,用于将单体架构的业务模块解耦拆分,以得到业务单元;所述业务单元包括微服务。
所述认证鉴权模块12与所述服务调度网关15连接,用于通过设置安全令牌对所述服务调度网关15建立统一认证鉴权。
所述配置管理模块13与所述业务支撑模块11以及服务调度网关15连接,用于通过所述服务调度网关15,针对所述业务支撑模块11的微服务的配置文件建立集中配置管理。
所述服务注册模块14与所述业务支撑模块11以及所述服务调度网关15连接,用于通过所述服务调度网关15,对所述业务支撑模块11中待发布的微服务建立服务注册发现,以供所述业务支撑模块11中的其他微服务对发布的该微服务进行路由调用。
于一实施例中,所述业务支撑模块11得到的业务单元包括以下模块的一种或多种组合:内容管理单元111、编排管理单元112、广告管理单元113、支付中心单元114、***管理单元115以及用户中心单元116。
所述内容管理单元111用于支持大小屏直播点播内容中多标签、多类目内容视频的管理配置。
如图3所示,所述内容管理单元111针对大小屏直播点播内容通过CMS(ContentManagement System,内容管理***)进行管理,支持多标签、多类目内容视频管理配置,可配置logo(LOGOtype,徽标或商标)及背景图片等。例如,多剧集管理可提供点播内容的名称、链接地址、类型以及更新时间等,在该界面中可进行编辑、关联以及删除操作。
所述编排管理单元112用于通过组合分类、排序和/或搜索的方式编排大小屏直播点播内容。
如图4所示,所述编排管理单元112对大小屏直播点播内容进行编排,将组合分类、排序、搜索等功能呈现给终端。例如,在页面管理中可通过页面显示标题清晰的了解点播内容的类别,同时可对点播内容进行编辑和配置。
所述广告管理单元113用于接入视频、图片、连接、apk下载及第三方广告,以在各页面广告推荐位呈现给用户。
如图5所示,所述广告管理单元113接入视频、图片、连接、apk(Android Package,安卓安装包)下载及第三方广告等,在各页面广告推荐位呈现给用户。例如,在广告位管理中,呈现广告位置名称、显示位置、页面位置,并对相关广告内容进行编辑、关联与删除。
所述支付中心单元114用于提供统一下单接口,以实现分渠道统一下单和统一支付流程。
如图6所示,所述支付中心单元114通过统一下单接口,支持支付宝、微信支付及其他第三发支付的方式。管理各产品包、优惠券等功能实现分渠道统一下单,统一支付流程。例如,在支付渠道中呈现支付渠道的方式、支付类型及渠道状态等信息,并对相关支付内容进行编辑和删除。
所述***管理单元115用于根据用户授权的细粒度权限控制通用平台。
如图7所示,所述***管理单元116基于用户授权的细粒度权限控制通用平台。接入的***可自由定义组织、角色、权限、资源等。例如,通过对人员进行管理员、人员信息录入管理员、运营中心管理员或少儿围棋管理员的角色描述,进行用户权限设置。
所述用户中心单元116用于实现用户注册、登录及第三方登录。
如图8所示,所述用户中心单元115实现最常用的用户注册、登录、第三方登录等基本需求,支持二次扩展开发。可对用户评论、订单数据做集中管理及数据统计。例如,用户信息中包括ID、昵称、地址、手机号、头像、性别等信息,并可对相应用户信息进行解绑操作。
于实际应用中,所述业务支撑模块11的业务单元还包括存储单元。所述存储单元用于提供统一上传接口,扩展第三方存储服务,具体为通过本地分布式存储的文件存储***,统一上传接口,可扩展阿里云oss(Object Storage Service,对象存储服务)、腾讯云cos(Cloud Object Storage,云对象存储)、七牛云等第三方存储服务。
于实际应用中,所述业务单元所包括的内容管理单元、编排管理单元、广告管理单元、支付中心单元、用户中心单元、***管理单元以及存储单元即为各自对应的微服务,具体为:内容管理的微服务、编排管理的微服务、广告管理的微服务、支付中心的微服务、用户中心的微服务、***管理的微服务以及存储单元的微服务。
需要说明的是,应理解所述基于微服务架构的业务支撑Saas***的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现,也可以全部以硬件的形式实现,还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如:x模块可以为单独设立的处理元件,也可以集成在上述***的某一个芯片中实现。此外,x模块也可以以程序代码的形式存储于上述***的存储器中,由上述***的某一个处理元件调用并执行以下x模块的功能。其它模块的实现与之类似。这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以下各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
以下这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),一个或多个数字信号处理器(Digital Singnal Processor,简称DSP),一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。当以下某个模块通过处理元件调用程序代码的形式实现时,该处理元件可以是通用处理器,如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。这些模块可以集成在一起,以片上***(System-on-a-chip,简称SOC)的形式实现。
需要说明的是,本发明所述基于微服务架构的业务支撑Saas***可以实现本发明所述基于微服务架构的业务支撑Saas方法,但本发明所述的基于微服务架构的业务支撑Saas方法的实现装置包括但不限于本实施例列举的所述基于微服务架构的业务支撑Saas***的结构,凡是根据本发明的原理所做的现有技术的结构变形和替换,都包括在本发明的保护范围内。
如图9所示,于一实施例中,所述基于微服务架构的业务支撑Saas方法具体包括以下几个步骤:
S91,通过业务支撑模块将单体架构的业务模块解耦拆分,以得到业务单元;所述业务单元包括微服务。
于实际应用中,根据业务需求、投入产出、组织结构、***扩展、软件发布和信息安全一方面或多方面组合的拆分需求将单体架构的业务模块解耦拆分。
具体地,在业务支撑***开发过程中,业务模块的解耦拆分需考虑的因素包括:
a.业务因素:模块拆分时先从项目的业务角度确定业务支撑***的拆分方案,要充分考虑业务模块的专业性和独立性,按业务功能规划出合理的拆分边界,整体架构设计和解耦拆分都要考虑业务的需求。
b.***扩展:把不同扩展性需求的业务模块拆分出来单独部署、可达到降低成本,提高效率。对于***中需求经常变化的模块要分离出来,便于业务的扩展和故障快速定位。
c.拆分策略:把容易识别、边界明显、有独立属性的业务模块以及抽象核心模块优先拆分,用新的模块替换老***。模块之间尽量保证单向调用,避免两个模块互相调用。
d.拆分前提:部署持续集成平台,自动化测试驱动,方便各模块测试验证;数据库设计减少大量联合查询,复杂查询通过应用层或ES(Elasticsearch,搜索服务器)等服务实现,尽量做到模块的无状态化。
于一实施例中,所述业务单元包括以下模块的一种或多种组合:内容管理单元,用于支持大小屏直播点播内容中多标签、多类目内容视频的管理配置;编排管理单元,用于通过组合分类、排序和/或搜索的方式编排大小屏直播点播内容;广告管理单元,用于接入视频、图片、连接、apk下载及第三方广告,以在各页面广告推荐位呈现给用户;支付中心单元,用于提供统一下单接口,以实现分渠道统一下单和统一支付流程;用户中心单元,用于实现用户注册、登录及第三方登录;***管理单元,用于根据用户授权的细粒度权限控制通用平台;存储单元,用于提供统一上传接口,扩展第三方存储服务。
如图10所示,在拆分时,***采用SpringCloud架构技术将业务模块解耦拆分为单独的微服务模块,结合Nginx负载均衡、SpringGateway服务调度网关、Nacos配置注册中心、Redis缓存***、Mqtt消息队列、Elk日志监控***形成所述基于微服务架构的业务支撑Saas***。
S92,通过认证鉴权模块设置安全令牌对服务调度网关建立统一认证鉴权。
于实际应用中,所述服务调度网关对外暴露统一规范的接口和包装响应结果,包括各个子***的交互接口、对外开放接口、开发加密接口、接口文档等服务,可在该模块支持验签、鉴权、路由、限流、监控、容错、日志等功能。
具体地,所述认证鉴权在Spring Security安全框架的基础上,结合Auth2.0开放网络的授权标准以及Json web token跨域认证对安全令牌进行设计,以实现统一的安全认证与鉴权,使得微服务之间能够按需隔离和安全互通。在统一认证和权限方面有较完善并且扩展性良好的微服务组件,可以作为微服务平台的公共的认证和鉴权服务。
如图11所示,显示为本发明的基于微服务架构的业务支撑Saas方法于一实施例中的认证鉴权界面示意图,通过账号密码登录进行认证与鉴权。
S93,通过配置管理模块针对所述业务支撑模块的微服务的配置文件建立集中配置管理。
于实际应用中,业务支撑中心分布式环境下,采用集中配置管理来提升运维的效率。动态配置服务可通过中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置。动态配置消除了配置变更时重新部署应用和服务的需要,让配置管理变得更加高效和敏捷。配置中心化管理让实现无状态服务变得更简单,让服务按需弹性扩展变得更容易。
具体地,通过Nacos配置注册中心提供一个简洁易用的UI界面管理所有的服务和应用的配置。所述Nacos配置注册中心还提供包括配置版本跟踪、金丝雀发布、一键回滚配置以及客户端配置更新状态跟踪在内的一系列开箱即用的配置管理特性,以便更安全地在生产环境中管理配置变更和降低配置变更带来的风险。
如图12所示,具体地,所述S93包括:
S931,搭建Nacos配置中心。
S932,在所述Nacos配置中心的Nacos Dashboard后台中发布微服务的配置文件。
S933,在已发布所述配置文件的微服务中集成配置中心sdk。
S934,启动该微服务后,通过所述配置中心sdk获取所述Nacos配置中心发布的配置文件。
如图13所示,可对不同微服务的配置文件进行操作,例如查询相关微服务的配置文件、导入新的微服务的配置文件、导出选中的配置文件以及克隆配置。
S94,通过服务注册模块对所述业务支撑模块中待发布的微服务建立服务注册发现,以供所述业务支撑模块中的其他微服务对发布的该微服务进行路由调用。
如图14所示,具体地,所述S93包括:
S941,搭建Nacos注册中心。
S942,在微服务中集成注册中心sdk。
S943,通过所述注册中心sdk向所述Nacos注册中心注册服务。
S944,在该微服务以外的其他微服务需要使用该微服务所注册的服务时,通过其他微服务的注册中心sdk从所述Nacos注册中心获取注册服务的元数据,以实现各个微服务之间的调用及负载均衡。
如图15所示,该界面呈现一服务列表,可对新注册的服务进行创建、查询或删除已有微服务。此外,每个微服务对应有详情、示例代码的链接。
需要说明的是,本发明所述的基于微服务架构的业务支撑Saas方法的保护范围不限于本实施例列举的步骤执行顺序,凡是根据本发明的原理所做的现有技术的步骤增减、步骤替换所实现的方案都包括在本发明的保护范围内。
于一实施例中,本发明的计算机存储介质上存储有计算机程序,该计算机程序被处理器执行时实现所述基于微服务架构的业务支撑Saas方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的计算机可读存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的计算机存储介质。
于一实施例中,本发明的设备包括:处理器、存储器、收发器、通信接口或/和***总线。存储器和通信接口通过***总线与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于和其他设备进行通信,处理器和收发器用于运行计算机程序,使所述设备执行所述基于微服务架构的业务支撑Saas方法的各个步骤。
上述提到的***总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该***总线可以分为地址总线、数据总线、控制总线等。通信接口用于实现数据库访问装置与其他设备(如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(Random Access Memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(扫描应用程序licationSpecific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field ProgrammableGate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
综上所述,本发明所述基于微服务架构的业务支撑Saas***、方法、介质及设备解决了原来***复杂性高的问题和现有的业务支撑***的技术债务问题。可以提高部署频率,解决了扩展能力受限的问题。通过不同的团队人员开发进行技术革新,并节省了很多重复开发的成本。***的服务独立运行,通过进程的方式隔离,使故障范围得到有效控制、***变得更简单可靠。根据业务的重要程度划分服务,把核心的业务划分为独立的服务,这样从数据库到服务可以保持有效的故障隔离,进而保持稳定,解决了现有的业务支撑***稳定性差的问题。本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (8)
1.一种基于微服务架构的业务支撑Saas***,其特征在于,所述基于微服务架构的业务支撑Saas***包括:
业务支撑模块,与服务调度网关连接,用于将单体架构的业务模块解耦拆分,以得到业务单元;所述业务单元包括微服务;所述业务单元包括内容管理单元、编排管理单元、广告管理单元、支付中心单元、***管理单元、用户中心单元以及存储单元中的一种或多种组合;在拆分时,根据业务需求、投入产出、组织结构、***扩展、软件发布和信息安全一方面或多方面组合的拆分需求将单体架构的业务模块解耦拆分;所述***采用SpringCloud架构技术将业务模块解耦拆分为单独的微服务模块,所述微服务模块结合Nginx负载均衡、SpringGateway服务调度网关、Nacos配置注册中心、Redis缓存***、Mqtt消息队列、Elk日志监控***形成所述基于微服务架构的业务支撑Saas***;
认证鉴权模块,与所述服务调度网关连接,用于通过设置安全令牌对所述服务调度网关建立统一认证鉴权;
配置管理模块,与所述业务支撑模块以及服务调度网关连接,用于通过所述服务调度网关,针对所述业务支撑模块的微服务的配置文件建立集中配置管理;通过所述配置管理模块针对所述业务支撑模块的微服务的配置文件建立集中配置管理时包括:搭建Nacos配置中心;在所述Nacos配置中心的Nacos Dashboard后台中发布微服务的配置文件;在已发布所述配置文件的微服务中集成配置中心sdk;启动该微服务后,通过所述配置中心sdk获取所述Nacos配置中心发布的配置文件;
服务注册模块,与所述业务支撑模块以及所述服务调度网关连接,用于通过所述服务调度网关,对所述业务支撑模块中待发布的微服务建立服务注册发现,以供所述业务支撑模块中的其他微服务对发布的该微服务进行路由调用。
2.根据权利要求1所述的基于微服务架构的业务支撑Saas***,其特征在于,
所述内容管理单元用于支持大小屏直播点播内容中多标签、多类目内容视频的管理配置;
所述编排管理单元用于通过组合分类、排序和/或搜索的方式编排大小屏直播点播内容;
所述广告管理单元用于接入视频、图片、连接、apk下载及第三方广告,以在各页面广告推荐位呈现给用户;
所述支付中心单元用于提供统一下单接口,以实现分渠道统一下单和统一支付流程;
所述用户中心单元用于实现用户注册、登录及第三方登录;
所述***管理单元用于根据用户授权的细粒度权限控制通用平台;
所述存储单元用于提供统一上传接口,扩展第三方存储服务。
3.一种基于微服务架构的业务支撑Saas方法,其特征在于,包括:
通过业务支撑模块将单体架构的业务模块解耦拆分,以得到业务单元;所述业务单元包括微服务;所述业务单元包括内容管理单元、编排管理单元、广告管理单元、支付中心单元、***管理单元、用户中心单元以及存储单元中的一种或多种组合;在拆分时,根据业务需求、投入产出、组织结构、***扩展、软件发布和信息安全一方面或多方面组合的拆分需求将单体架构的业务模块解耦拆分;所述***采用SpringCloud架构技术将业务模块解耦拆分为单独的微服务模块,所述微服务模块结合Nginx负载均衡、SpringGateway服务调度网关、Nacos配置注册中心、Redis缓存***、Mqtt消息队列、Elk日志监控***形成所述基于微服务架构的业务支撑Saas***;
通过认证鉴权模块设置安全令牌对服务调度网关建立统一认证鉴权;
通过配置管理模块针对所述业务支撑模块的微服务的配置文件建立集中配置管理,包括:搭建Nacos配置中心;在所述Nacos配置中心的Nacos Dashboard后台中发布微服务的配置文件;在已发布所述配置文件的微服务中集成配置中心sdk;启动该微服务后,通过所述配置中心sdk获取所述Nacos配置中心发布的配置文件;
通过服务注册模块对所述业务支撑模块中待发布的微服务建立服务注册发现,以供所述业务支撑模块中的其他微服务对发布的该微服务进行路由调用。
4.根据权利要求3所述的基于微服务架构的业务支撑Saas方法,其特征在于,
所述内容管理单元用于支持大小屏直播点播内容中多标签、多类目内容视频的管理配置;
所述编排管理单元用于通过组合分类、排序和/或搜索的方式编排大小屏直播点播内容;
所述广告管理单元用于接入视频、图片、连接、apk下载及第三方广告,以在各页面广告推荐位呈现给用户;
所述支付中心单元用于提供统一下单接口,以实现分渠道统一下单和统一支付流程;
所述用户中心单元用于实现用户注册、登录及第三方登录;
所述***管理单元用于根据用户授权的细粒度权限控制通用平台;
所述存储单元用于提供统一上传接口,扩展第三方存储服务。
5.根据权利要求3所述的基于微服务架构的业务支撑Saas方法,其特征在于,所述通过认证鉴权模块设置安全令牌对服务调度网关建立统一认证鉴权的步骤包括:
在Spring Security安全框架的基础上,结合Auth2.0开放网络的授权标准以及Jsonweb token的跨域认证对安全令牌进行设计,以实现统一的安全认证与鉴权。
6.根据权利要求3所述的基于微服务架构的业务支撑Saas方法,其特征在于,所述通过服务注册模块对所述业务支撑模块中待发布的微服务建立服务注册发现的步骤包括:
搭建Nacos注册中心;
在微服务中集成注册中心sdk;
通过所述注册中心sdk向所述Nacos注册中心注册服务;
在该微服务以外的其他微服务需要使用该微服务所注册的服务时,通过其他微服务的注册中心sdk从所述Nacos注册中心获取注册服务的元数据,以实现各个微服务之间的调用及负载均衡。
7.一种介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求3至6中任一项所述基于微服务架构的业务支撑Saas方法。
8.一种设备,其特征在于,包括:处理器及存储器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述设备执行如权利要求3至6中任一项所述基于微服务架构的业务支撑Saas方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910882533.XA CN112532413B (zh) | 2019-09-18 | 2019-09-18 | 基于微服务架构的业务支撑Saas***、方法、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910882533.XA CN112532413B (zh) | 2019-09-18 | 2019-09-18 | 基于微服务架构的业务支撑Saas***、方法、介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112532413A CN112532413A (zh) | 2021-03-19 |
CN112532413B true CN112532413B (zh) | 2023-06-06 |
Family
ID=74975146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910882533.XA Active CN112532413B (zh) | 2019-09-18 | 2019-09-18 | 基于微服务架构的业务支撑Saas***、方法、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112532413B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113220290A (zh) * | 2021-04-23 | 2021-08-06 | 杭州数跑科技有限公司 | 应用的业务功能实现方法、装置、设备及存储介质 |
CN113411208A (zh) * | 2021-05-28 | 2021-09-17 | 青岛海尔科技有限公司 | 用于分布式流量管理的***、设备 |
CN113687856A (zh) * | 2021-06-24 | 2021-11-23 | 广州欢网科技有限责任公司 | 将***颗粒化的方法及设备 |
CN113535227B (zh) * | 2021-09-07 | 2021-12-21 | 深圳市云中鹤科技股份有限公司 | 一种数字化技术架构的部署方法和装置 |
CN114401098B (zh) * | 2021-12-28 | 2022-08-12 | 智昌科技集团股份有限公司 | 一种快速构建微服务的应用***及方法 |
CN114826771A (zh) * | 2022-05-27 | 2022-07-29 | 中国农业银行股份有限公司 | 一种安全认证方法、***、设备及可读存储介质 |
CN115242644A (zh) * | 2022-07-26 | 2022-10-25 | 天元大数据信用管理有限公司 | 一种微服务开发治理*** |
CN115484155B (zh) * | 2022-08-15 | 2024-05-28 | 南京国电南自电网自动化有限公司 | 一种面向多web微服务应用的管理*** |
CN117082146B (zh) * | 2023-10-13 | 2024-01-23 | 人民法院信息技术服务中心 | 一种跨业务的多元司法服务综合集成调度*** |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109314704A (zh) * | 2016-09-14 | 2019-02-05 | 甲骨文国际公司 | 用于多租户身份和数据安全管理云服务的单点登录和单点注销功能 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9838376B1 (en) * | 2016-05-11 | 2017-12-05 | Oracle International Corporation | Microservices based multi-tenant identity and data security management cloud service |
US10862733B2 (en) * | 2016-06-28 | 2020-12-08 | Virtustream Ip Holding Company Llc | Standardized microservices for controlling components of distinct applications in multi-tenant clouds |
CN107528853A (zh) * | 2017-09-12 | 2017-12-29 | 上海艾融软件股份有限公司 | 微服务权限控制的实现方法 |
CN108737224B (zh) * | 2017-09-28 | 2020-06-09 | 新华三技术有限公司 | 一种基于微服务架构的报文处理方法和装置 |
CN109673232B (zh) * | 2018-11-02 | 2021-01-26 | 中国农业大学 | 一种基于微服务架构的智慧滴灌云服务管理*** |
CN109981561B (zh) * | 2019-01-17 | 2020-05-22 | 华南理工大学 | 单体架构***迁移到微服务架构的用户认证方法 |
CN110198340B (zh) * | 2019-04-18 | 2021-04-06 | 视联动力信息技术股份有限公司 | 一种移动终端的管理***、方法以及装置和存储介质 |
-
2019
- 2019-09-18 CN CN201910882533.XA patent/CN112532413B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109314704A (zh) * | 2016-09-14 | 2019-02-05 | 甲骨文国际公司 | 用于多租户身份和数据安全管理云服务的单点登录和单点注销功能 |
Non-Patent Citations (2)
Title |
---|
The Design of Inland River Ship Microservice Information System Based on Spring Cloud;Shaobo He;等;《2018 5th International Conference on Information Science and Control Engineering (ICISCE)》;全文 * |
邓向冬 ; 郏涛 . 微服务架构的发展和在视听媒体领域的应用.《 广播与电视技术 》.2019,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN112532413A (zh) | 2021-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112532413B (zh) | 基于微服务架构的业务支撑Saas***、方法、介质及设备 | |
JP6923705B2 (ja) | Nfvシステムのためのネットワーク・サービス設計及びデプロイメント・プロセス | |
US10664331B2 (en) | Generating an application programming interface | |
US10462018B2 (en) | Managing a number of secondary clouds by a master cloud service manager | |
JP6819296B2 (ja) | 仮想化管理・オーケストレーション装置、仮想化管理・オーケストレーション方法、および、プログラム | |
JP7090152B2 (ja) | デバイス設計のためのコードモジュール選択 | |
CN103226493B (zh) | 多操作***业务的部署方法和*** | |
CN106990960B (zh) | 代码部署方法及装置 | |
US10324701B1 (en) | Rapid deployment of computing instances | |
US20200387387A1 (en) | System for building, managing, deploying and executing reusable analytical solution modules for industry applications | |
CN112581201A (zh) | 一种面向工业互联制造的移动开放平台及实现方法 | |
US11863419B2 (en) | Network service management system and network service management method | |
US20220179629A1 (en) | Software release orchestration for continuous delivery of features in a cloud platform based data center | |
Tranoris et al. | Enabling Cyber-Physical Systems for 5G networking: A case study on the Automotive Vertical domain | |
US20230040842A1 (en) | Network service management system and network service management method | |
US9235437B2 (en) | Method and integration component for integrating OSGi environments into a Service-oriented Architecture | |
CN105592130A (zh) | 一种服务部署方法、服务管理方法及装置 | |
CN112000343A (zh) | 使用Devops在Kubernetes中部署多版本服务的方法及*** | |
CN111897565A (zh) | 基于物联网的数据处理方法、装置和设备 | |
WO2022241947A1 (zh) | 一种对应用程序的数据处理方法、装置、设备及存储介质 | |
CN113268272B (zh) | 基于私有云的应用交付方法、装置及*** | |
CN113835827A (zh) | 基于容器Docker的应用部署方法、装置及电子设备 | |
JP2013020494A (ja) | ソフトウェア実行システムおよびソフトウェア実行方法およびプログラム | |
US11281494B2 (en) | Business operation method, apparatus, and system for determining and executing operation tasks in cloud computing | |
CN116701234B (zh) | 应用程序的调试方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |