掌桥专利:专业的专利平台
掌桥专利
首页

一种服务间数据通信系统、方法、设备及存储介质

文献发布时间:2024-04-18 20:01:23


一种服务间数据通信系统、方法、设备及存储介质

技术领域

本公开实施例涉及通信技术领域,尤其涉及一种服务间数据通信系统、方法、设备及存储介质。

背景技术

近年来,随着我国经济的高速发展,广大人民群众参与的金融活动也愈发丰富。客户交易类型的数量在不断上升,交易场景的灵活性也在不断增强,这些都对银行业务和系统提出了更高的要求。在互联网科技和大数据技术快速发展与进步的浪潮中,微服务架构在商业银行大型软件平台应用中拥有十分明显的优势。

目前,服务间的同步通信一般使用RESTful API,虽然能提供即时的响应,但是存在耦合度高、请求易阻塞和请求无缓冲等缺点。随着银行业务和数据量的增多,如何高效地简化服务间的通信逻辑、并以服务为主体对各服务间的数据通信情况进行清晰的可视化管理,成为了一个值得考虑的问题。

发明内容

本公开实施例提供了一种服务间数据通信系统、方法、设备及存储介质,简化了服务间的数据收发过程。

第一方面,提供了一种服务间数据通信系统,包括:服务管理模块、服务通信模块以及缓存与同步模块;

所述服务管理模块,用于以服务为主体,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理;

所述服务通信模块,用于实现服务之间的异步通信;

所述缓存与同步模块,用于缓存所述服务信息、所述消息主题和所述订阅关系,以及同步不同服务间数据通信系统的数据。

第二方面,提供了一种服务间数据通信方法,由上述第一方面提供的服务间数据通信系统所包括的服务管理模块、服务通信模块以及缓存与同步模块执行,包括:

服务管理模块以服务为主体,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理;

服务通信模块实现服务之间的异步通信;

缓存与同步模块缓存所述服务信息、所述消息主题和所述订阅关系,并同步不同服务间数据通信系统的数据。

第三方面,提供了一种电子设备,所述电子设备包括:

至少一个处理器;以及;

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述第二方面提供的服务间数据通信方法。

第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开实施例上述第二方面提供的服务间数据通信方法。

本公开实施例提供了一种服务间数据通信系统、方法、设备及存储介质,包括:服务管理模块、服务通信模块以及缓存与同步模块;所述服务管理模块,用于以服务为主体,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理;所述服务通信模块,用于实现服务之间的异步通信;所述缓存与同步模块,用于缓存所述服务信息、所述消息主题和所述订阅关系,以及同步不同服务间数据通信系统的数据。现有技术中,Kafka可视化管理工具如EFAK等主要针对的是Kafka中主题与消费信息等的查询和监控,且在每个服务中需要对每个服务中都引入Kafka依赖和配置信息。本公开实施例的服务间数据通信系统通过服务管理模块实现了对服务信息、消息主题和订阅关系等情况进行了清晰的可视化管理,通过服务与通信模块增加了消息主动推送功能来简化服务间的数据收发过程,并设计了缓存和同步模块来保障系统的高性能和高可用性。

应当理解,本部分所描述的内容并非旨在标识本公开实施例的关键或重要特征,也不用于限制本公开实施例的范围。本公开实施例的其它特征将通过以下的说明书而变得容易理解。

需要说明的是,本公开技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。

附图说明

为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本公开实施例一提供的一种服务间数据通信系统的结构框图;

图2是本公开实施例一提供的缓存与同步模块的缓存机制的示意图;

图3是本公开实施例一提供的缓存与同步模块的同步机制的示意图;

图4是本公开实施例一提供的服务管理模块的结构框图;

图5是本公开实施例一提供的服务通信模块的结构框图;

图6是本公开实施例一提供的服务间数据通信系统的总体架构图

图7是本公开实施例二提供的一种服务间数据通信方法的流程图;

图8给出了用来实施本公开实施例的电子设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本公开实施例的方案,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开实施例一部分的实施例,而不是全部的实施例。基于本公开实施例中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本公开实施例保护的范围。

需要说明的是,本开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

需要说明的是,本公开技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。

实施例一

图1为本公开实施例一提供的一种服务间数据通信系统的结构框图,本系统可适用于对服务间的数据通信进行通信管理的情况。如图1所示,该服务间数据通信系统10包括:服务管理模块101、服务通信模块102以及缓存与同步模块103;

所述服务管理模块101,用于以服务为主体,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理;

所述服务通信模块102,用于实现服务之间的异步通信;

所述缓存与同步模块103,用于缓存所述服务信息、所述消息主题和所述订阅关系,以及同步不同服务间数据通信系统的数据。

本实施例提供了一种服务间数据通信系统10,该服务间数据通信系统10包括:服务管理模块101、服务通信模块102以及缓存与同步模块103。服务管理模块101以服务为主体,提供了对服务信息、消息主题以及各个服务之间的订阅关系的可视化管理;服务通信模块102可以用来支持各服务之间的异步通信交互;缓存与同步模块103可以是系统底层的核心机制,缓存机制设计了二级缓存来存储经常访问的信息,同步机制则采用了去中心化的消息广播来同步各个节点间的数据,在系统集群部署的模式下保证数据最终一致性。服务间数据通信系统10还可以包含HTTP接口,HTTP接口可以用于接收用户操作请求。

服务管理模块101,用于以服务为主体,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理。

在本实施例中,服务管理模块101以服务为主体,提供了对服务信息、消息主题以及各个服务之间的订阅关系的可视化管理。其中,服务可以是外来的请求信息,服务间数据通信系统10在接收到外来的服务信息后,可以根据接收的服务的具体内容,执行不同的操作;服务信息可以包括服务ID、服务名称、服务部署的IP地址等;消息主题信息包括消息主题ID、消息主题名称、创建该消息主题的服务ID、JSON字符串表示的消息内容格式说明等。

具体的,服务管理模块101可以采用模型-视图-控制器架构。其中,模型-视图-控制器架构又可以被称为MVC(Model View Controller)架构,MVC架构把服务管理模块101分为模型、视图和控制器三个基本部分,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。此模式透过对复杂度的简化,使程序结构更加直观。

所述服务管理模块101可以用于通过前端控制器通过业务逻辑层调用数据持久层,以对所述服务信息、所述消息主题以及所述服务之间的订阅关系进行相应数据操作。其中,业务逻辑层可以是整体系统的逻辑控制层,可以控制系统的执行步骤,数据持久层可以是系统的数据存储单元,用于存储服务所需要的数据。

服务通信模块102,用于实现服务之间的异步通信;

在本实施例中,异步通信是一种数据传输方式,异步通信通常以一个字符为传输单位,且两个字符之间传输的时间间隔是不固定的,异步通信的每一个字符的开始和结束的地方可以加上标志位,以便于接收端能够正确的接收每一个字符。

具体的,服务通信模块102是服务间数据通信系统10的核心功能,注册进服务间数据通信系统10中的各个服务均通过该模块进行基于主题的发布/订阅形式的异步通信交互。

其中,发布/订阅可以是一种异步通信模式,发送者将消息持久化存储在特定的主题中,接收者通过订阅主题来消费主题中的消息。发布/订阅模式可以定义如何向一个节点发布和订阅消息,这个节点称之为“主题(Topic)”,主题可以认为是消息传递的中介,消息发布者将消息发布到某个主题,而消息订阅者则从主题中订阅消息。主题使得消息的订阅者与消息的发布者互相保持独立,不需要进行接触即可保证消息的传递,发布/订阅模式在消息的一对多广播时采用。

缓存与同步模块103,用于缓存所述服务信息、所述消息主题和所述订阅关系,以及同步不同服务间数据通信系统的数据。

在本实施例中,缓存与同步模块103可以使用两级缓存的方式缓存所述服务信息、所述消息主题和所述订阅关系,其中,一级缓存为只读缓存,二级缓存为读写缓存;其中,只读缓存可以是缓存的文档属性只可以读取,不能进行修改和储存操作,读写缓存可以是缓存的文档属性即可进行读取操作,又可以进行修改操作。

可选的,缓存与同步模块103还可以用于:

a1)当查询的数据在所述一级缓存中不存在时,从所述二级缓存中读取并更新相应的数据,以及定时从所述二级缓存中刷新数据。

在本实施例中,一级缓存为只读缓存,二级缓存为读写缓存。图2为本实施例给出的缓存与同步模块103的缓存机制的示意图,如图2所示,当查询的数据信息在一级缓存中不存在时,会从二级缓存中读取并更新数据,同时,也会定时从二级缓存中刷新数据。

b1)当查询的数据在所述二级缓存中不存在时,从数据库中读取相应数据并写入所述二级缓存。

在本实施例中,当一级缓存从二级缓存读取数据但是二级缓存中没有时,二级缓存会从数据库中读取数据并写入。

c1)在对所述服务信息、所述消息主题和/或所述订阅关系进行数据操作时清空所述二级缓存中操作前的历史数据,以及定时自动失效缓存数据。

具体的,当出现对服务信息、消息主题和订阅关系等数据的增、删、改操作时,会清空二级缓存中的旧数据,同时,二级缓存也会定时自动失效缓存数据。

可选的,缓存与同步模块103具体用于采用去中心化的消息广播同步不同服务间数据通信系统的数据。

图3为本实施例给出的缓存与同步模块103的同步机制的示意图,如图3所示,同步机制中采用去中心化的方式,不区分主从节点。其中,节点可以是本实施例中的服务间数据通信系统10,集群中任意一个节点会管理所有的节点信息,当节点收到对服务信息、消息主题和订阅关系等数据的增、删、改等操作请求时,会向其余节点发送消息广播进行数据同步。如果广播失败,则进行重试,直到任务过期后取消,待网络恢复正常后,重新进行数据同步,从而保证节点间数据的最终一致性。

本实施例一提供了一种服务间数据通信系统,包括:服务管理模块、服务通信模块以及缓存与同步模块;所述服务管理模块,用于以服务为主体,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理;所述服务通信模块,用于实现服务之间的异步通信;所述缓存与同步模块,用于缓存所述服务信息、所述消息主题和所述订阅关系,以及同步不同服务间数据通信系统的数据。该方法通过服务管理模块实现了对服务信息、消息主题和订阅关系等情况进行了清晰的可视化管理,通过服务与通信模块增加了消息主动推送功能来简化服务间的数据收发过程,并设计了缓存和同步模块来保障系统的高性能和高可用性。

作为本实施例的一种可选实施例,图4给出了本实施例所提供的服务管理模块101的结构框图,本可选实施例是对服务管理模块101进行细化,如图4所示,服务管理模块101包括:服务信息管理子模块1011、消息主题管理子模块1012和订阅关系管理子模块1013。

其中,服务信息管理子模块1011,用于注册、更新、查看以及删除在所述服务间数据通信系统中注册的服务信息;

消息主题管理子模块1012,用于创建、更新、查看以及删除所述服务间数据通信系统中的消息主题;

订阅关系管理子模块1013,用于订阅消息主题、查看消息主题的订阅关系以及删除消息主题的订阅关系。

具体的,服务管理包括服务信息管理子模块1011、消息主题管理子模块1012和订阅关系管理子模块1013,分别负责管理注册进平台的服务、开发人员在系统中创建的消息主题以及每个消息主题的订阅情况信息,具体实现了对数据库的增、删、改和/或查等操作。

其中,在消息主题创建完成后,消息主题管理子模块1012会在Kafka集群中创建一个真正的主题(Topic)用于后续进行数据通信。订阅关系信息可以包括消息主题名称、订阅该消息主题的服务ID、消息推送的URL地址、消息推送失败重传机制等。

本可选实施例提供了一种服务管理模块,所述服务管理模块包括:服务信息管理子模块、消息主题管理子模块和订阅关系管理子模块。其中,服务信息管理子模块,用于注册、更新、查看以及删除在所述服务间数据通信系统中注册的服务信息;消息主题管理子模块,用于创建、更新、查看以及删除所述服务间数据通信系统中的消息主题;订阅关系管理子模块,用于订阅消息主题、查看消息主题的订阅关系以及删除消息主题的订阅关系。本实施例提供的服务管理模块采用MVC三层架构进行设计,实现了对服务信息、消息主题和订阅关系等情况进行了清晰的可视化管理。

作为本实施例的一种可选实施例,图5给出了本实施例提供的服务通信模块102的一种结构框图,本可选实施例是对服务通信模块102进行细化,如图5所示,服务通信模块102包括:消息生产者子模块1021和消息消费者模块1022。

其中,消息生产者子模块1021,用于接收服务发布的请求消息,并根据请求消息将相应的消息对象序列化为JSON对象简谱格式的字符串后发布至Kafka集群的相应主题;

具体的,消息生产者子模块1021收到服务发布消息的HTTP POST请求后,首先会将消息对象序列化成一个JSON字符串,然后根据该消息的主题,将该消息通过和Kafka集群之间建立的通信长连接发布到Kafka集群中的相应主题上。

其中,Kafka可以是一种能够支持高并发以及流式消息处理的消息中间件,可以使用发布/订阅模式来获取和分发海量的消息的分布式消息系统,并且同时具备快速持久化、高吞吐率、支持数据的实时处理以及支持在线水平扩展等特点。

在本实施例中,消息对象可以包括messageId字段、serviceId字段、topic字段和/或payload字段;其中,messageId字段可以用来表示消息ID,是消息的唯一标识;serviceId字段可以用来表示消息的发布者,即服务ID;topic字段可以用来表示消息的主题;payload字段可以用来表示用JSON格式保存的消息具体内容。

消息消费者子模块1022,用于监听并将所述Kafka集群中的字符串反序列化为消息对象后封装成消息推送任务,并根据订阅关系表将所述消息对象主动推送至对应的订阅者。

需要解释的是,消息消费者子模块1022可以使用Kafka软件开发工具包(SoftwareDevelopment Kit,SDK)中的Kafka Consumer来进行消息消费。其中,Kafka Consumer是Kafka生态系统中的重要组件,它负责从Kafka集群中接收和处理消息。Kafka Consumer基于发布/订阅模型,允许开发者以高吞吐量、低延迟的方式处理实时数据。在Kafka中,消费者可以属于一个消费者组,共同消费一个主题(Topic)中的消息。

接上述描述,每个订阅者都可以包含一个消费者集合,可以包含一个或多个消费者线程,每个消费者线程都包含一个Kafka Consumer,并通过它向Kafka集群订阅该订阅者所需要的消息主题。当消费者线程获取到该订阅者订阅的消息后,会把消息反序列化成消息对象,然后封装成消息推送任务,并根据订阅关系中的推送地址通过HTTP POST请求发送给对应的订阅者。

可选的,所述消息消费者子模块1022,还用于:在推送失败次数达到最大重传次数时,将所述消息对象发布至所述kafka集群的失败队列中并生成告警通知消息。

具体的,为了保证消息的有效推送,消息消费者子模块1022针对消息推送失败的情况设计了失败重传机制。其中,失败重传机制可以是消息传送失败后重新传递的机制,失败重传机制可以包括最大重传次数,最大重传次数可以是消息传递失败一次后可以重新传递的最大的次数。

具体的,每种订阅关系都有自己的失败重传机制,失败重传机制包含消息的最大重传次数,当消息已经达到最大重传次数却依旧没有推送成功时,会将该消息发布到Kafka集群的失败队列上,并向系统管理员发出告警通知消息。

本可选实施例提供了一种服务通信模块,所述服务通信模块包括消息生产者子模块和消息消费者子模块。其中,消息生产者子模块,用于接收服务发布的请求消息,并根据请求消息将相应的消息对象序列化为JSON对象简谱格式的字符串后发布至Kafka集群的相应主题;消息消费者子模块用于监听并将所述Kafka集群中的字符串反序列化为消息对象后封装成消息推送任务,并根据订阅关系表将所述消息对象主动推送至对应的订阅者。本实施例提供的服务通信模块简化了各服务获取数据消息的逻辑,并且进一步降低了服务之间的耦合度。不同于传统的Kafka中仅支持的拉取模式(Pull)的消费方式,服务通信模块中的消息消费者子模块首先会消费Kafka集群中的消息,然后再按照订阅关系将消息主动推送给相应的服务。

图6为本实施例提供的服务间数据通信系统的总体架构图,如图6所示,开发人员可以将开发完成的服务注册到系统中,服务管理功能以服务为主体,提供了对服务信息、消息主题以及各个服务之间的订阅关系的可视化管理。服务通信功能支持各服务之间的异步通信交互,主要包括消息生产者和消息消费者。其中,可以将服务间通信的数据称为“消息”,消息生产者子模块主要负责收到系统中各服务发布的消息,并将消息持久化保存在Kafka集群,而消息消费者子模块则负责监听并消费Kafka集群中的所有消息,并根据订阅关系表将消息主动推送给订阅了此消息主题的其他订阅者。缓存与同步功能是系统底层的核心机制,缓存机制设计了二级缓存来存储经常访问的信息,同步机制则采用了去中心化的消息广播来同步各个节点间的数据,在系统集群部署的模式下保证数据最终一致性。

本实施例提供的服务间数据通信系统实现了以服务为主体的消息主题和服务间订阅关系的可视化管理,在Kafka的基础上增加了消息主动推送功能来简化服务间的数据收发过程,并设计了缓存和同步机制来保障系统的高性能和高可用性。

实施例二

图7为本公开实施例二提供的一种服务间数据通信方法的流程图,该方法适用于服务间进行数据通信的情况,应用于本公开实施例一所提供的服务间数据通信系统。如图7所示,该方法包括:

S210、服务管理模块以服务为主体,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理。

在本实施例中,服务管理模块可以作为可视化界面,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理。

具体的,服务管理模块包括服务信息管理子模块、消息主题管理子模块和订阅关系管理子模块。其中,服务信息管理子模块可以用于管理注册进平台的服务,消息主题管理子模块可以用于管理开发人员在系统中创建的消息主题,订阅关系管理子模块可以用于管理每个消息主题的订阅情况信息。服务管理模块具体实现了对数据库的增、删、改和/或查等操作。

其中,服务信息包括服务ID、服务名称、服务部署的IP地址等。消息主题信息包括消息主题ID、消息主题名称、创建该消息主题的服务ID、JSON字符串表示的消息内容格式说明等,其中,在消息主题创建完成后,消息主题管理子模块会在Kafka集群中创建一个真正的主题(Topic)用于后续进行数据通信。订阅关系信息包括消息主题名称、订阅该消息主题的服务ID、消息推送的URL地址、消息推送失败重传机制等。

S220、服务通信模块实现服务之间的异步通信。

可以知道的是,服务通信模块可以支持各服务之间的异步通信交互,服务通信模块可以包括消息生产者和消息消费者,其中,消息生产者子模块可以负责收到系统中各服务发布的消息,并将消息持久化保存在Kafka集群,消息消费者子模块可以负责监听并消费Kafka集群中的所有消息,并根据订阅关系表将消息主动推送给订阅了此消息主题的其他订阅者。

需要说明的是,服务通信模块需要查询数据时,可以从服务管理模块进行查询。

S230、缓存与同步模块缓存服务信息、消息主题和订阅关系,并同步不同服务间数据通信系统的数据。

在本实施例中,缓存与同步功能的缓存机制设计了二级缓存来存储服务信息、所述消息主题和所述订阅关系,同步机制则采用了去中心化的消息广播来同步各个节点间的数据,在系统集群部署的模式下保证数据最终一致性。

具体的,一级缓存为只读缓存,当查询的数据信息在一级缓存中不存在时,会从二级缓存中读取并更新数据,同时,也会定时从二级缓存中刷新数据。二级缓存则为读写缓存,当一级缓存从二级缓存读取数据但是二级缓存中没有时,二级缓存会从数据库中读取数据并写入,当出现对服务信息、消息主题和订阅关系等数据的增删改操作时会清空二级缓存中的旧数据,同时,二级缓存也会定时自动失效缓存数据。

接上述描述,可以采用去中心化的方式,不区分主从节点。集群中任意一个节点会管理所有的节点信息,当节点收到对服务信息、消息主题和订阅关系等数据的增、删和/或改操作请求时,会向其余节点发送消息广播进行数据同步。如果广播失败,则进行重试,直到任务过期后取消,待网络恢复正常后,重新进行数据同步,从而保证节点间数据的最终一致性。

示例性的,缓存与同步模块的缓存功能可以用于查询或访问数据库的过程中,如:访问数据库将订阅者所需的消息推送给消息订阅者。当缓存功能可以用于查询或访问数据库时,一级缓存可以是常用的查询数据,二级缓存可以是次常用的查询数据。

本实施例提供了一种服务间数据通信方法,包括:服务管理模块以服务为主体,提供对服务信息、消息主题以及服务之间的订阅关系的可视化管理;服务通信模块实现服务之间的异步通信;缓存与同步模块缓存所述服务信息、所述消息主题和所述订阅关系,并同步不同服务间数据通信系统的数据。本实施例提供的服务间数据通信方法实现了以服务为主体的消息主题和服务间订阅关系的可视化管理,在Kafka的基础上增加了消息主动推送功能来简化服务间的数据收发过程,并设计了缓存和同步机制来保障系统的高性能和高可用性。

实施例三

图8示出了可以用来实施本公开实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开实施例的实现。

如图8所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。

电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微处理器等。处理器11执行上文所描述的各个方法和处理,例如服务间数据通信方法。

在一些实施例中,服务间数据通信方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的服务间数据通信方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行服务间数据通信方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开实施例的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开实施例的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。

计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开实施例中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开实施例的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开实施例保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开实施例的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开实施例保护范围之内。

相关技术
  • 一种基于深度跟随的截骨导板的制造方法及截骨导板
  • 一种配有截骨导板的用于喉功能重建的个性化软骨修复支架的数字化设计和制造方法
技术分类

06120116555972