一种请求发送方法、装置以及第一服务器制造方法及图纸

技术编号:25193075 阅读:15 留言:0更新日期:2020-08-07 21:19
本申请公开了一种请求发送方法、装置以及第一服务器,涉及通信技术领域。具体实现方案为:接收电子设备发送的第一请求;响应于第一请求,按照单体应用的第一预设流量比例以及微服务的第二预设流量比例,向单体服务或者微服务发送第二请求,其中,第二请求基于第一请求生成。即可按照第一预设流量比例和第二预设流量比例平衡发送给单体服务和微服务的请求量,可减少微服务发生异常导致对请求响应不及时以及容易发生错误的情况发生。

【技术实现步骤摘要】
一种请求发送方法、装置以及第一服务器
本申请涉及计算机技术中的通信
,尤其涉及一种请求发送方法、装置以及第一服务器。
技术介绍
单体应用是指一个归档包(例如,JAR、WAR、EAR或其他格式的包)包含了所有功能的应用程序,其对应的后台服务器为单体服务器,单体服务器将应用的所有功能放在一个单一进程中,微服务架构则是将一个单一应用程序开发为一组小型服务(微服务)的方法,每个功能分别放在一个独立的服务中,每个服务运行在自己的进程中,服务间通信采用轻量级通信机制,通常采用的是HTTPAPI,这些服务围绕业务能力构建并且可通过全自动部署机制独立部署,这些服务共用一个最小型的集中式的管理,服务可用不同的语言开发,使用不同的数据存储技术。关键不仅仅在于微服务本身,而是系统要提供一套基础的架构,这种架构使得微服务可以独立的部署、运行、升级,不仅如此,这个系统架构还让微服务与微服务之间在结构上“松耦合”或“解耦”,而在功能上则表现为一个统一的整体。从单体应用向微服务迁移过程,可以理解为从单体服务器向微服务迁移,需要多个子过程,例如,包括.业务拆分:将单体服务器拆分为多个独立的微服务;服务重构:根据性能或成本等因素,重构拆分后的微服务;测试验证:测试拆分或重构的微服务的结果与拆分前结果一致,符合预期;服务部署:容器化部署拆分后的微服务,按流量弹性伸缩;流量迁移:用户流量从单体服务器迁移到微服务架构,流量为单位时间内请求次数;以及异常处置:服务异常或用户反馈时,快速回切流量到单体服务器。对于其中的流量迁移,目前,现有将应用的单体服务器的流量迁移到微服务过程中,所有请求都发送给微服务,即流量全部切换至微服务,一旦微服务发生异常等,容易出现对请求的响应不及时或发生错误。
技术实现思路
本申请提供一种请求发送方法、装置以及第一服务器,以解决现有流量迁移过程中微服务发生异常时,容易出现对请求的响应不及时或发生错误的问题。第一方面,本申请一个实施例提供一种请求发送方法,应用于第一服务器,所述方法包括:接收电子设备发送的第一请求;响应于所述第一请求,按照所述单体应用的第一预设流量比例以及所述微服务的第二预设流量比例,向所述单体服务或者所述微服务发送第二请求,其中,所述第二请求基于所述第一请求生成。在本申请的请求发送方法中,响应第一请求,按照第一应用的单体服务的第一预设流量比例以及所述第一应用的微服务的第二预设流量比例,确定向所述单体服务还是向所述微服务发送基于第一请求生成的第二请求,即向单体服务或微服务器发送第二请求,而不是将所有请求集中发送给微服务,如此,可按照第一预设流量比例和第二预设流量比例平衡发送给单体服务和微服务的请求量,可减少微服务发生异常导致对请求响应不及时以及容易发生错误的情况发生。第二方面,本申请一个实施例提供一种请求发送装置,应用于第一服务器,所述装置包括:第一接收模块,用于接收电子设备发送的第一请求;第一发送模块,用于响应于所述第一请求,按照所述单体应用的第一预设流量比例以及所述微服务的第二预设流量比例,向所述单体服务或者所述微服务发送第二请求,其中,所述第二请求基于所述第一请求生成。在本申请的请求发送装置中,通过第一发送模块响应第一请求,按照第一应用的单体服务的第一预设流量比例以及所述第一应用的微服务的第二预设流量比例,确定向所述单体服务还是向所述微服务发送基于第一请求生成的第二请求,即向单体服务或微服务器发送第二请求,而不是将所有请求集中发送给微服务,如此,可按照第一预设流量比例和第二预设流量比例平衡发送给单体服务和微服务的请求量,可减少微服务发生异常导致对请求响应不及时以及容易发生错误的情况发生。第三方面,本申请一个实施例还提供一种第一服务器,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请各实施例提供的方法。第四方面,本申请一个实施例还提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请各实施例提供的方法。应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。附图说明附图用于更好地理解本方案,不构成对本申请的限定。其中:图1是本申请提供的一个实施例的请求发送方法的流程示意图;图2是用来实现本申请实施例的请求发送方法的系统的原理图;图3是本申请提供的一个实施例的请求发送装置的结构图;图4是用来实现本申请实施例的请求发送方法的第一服务器的框图。具体实施方式以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。如图1所示,根据本申请的实施例,本申请提供一种请求发送方法,应用于第一服务器,方法包括:步骤S101:接收电子设备发送的第一应用相关的第一请求。该方法可应用在单体服务向微服务迁移的过程中,电子设备可以是服务器或终端设备,终端设备可以包括但不限于手机、平板电脑、膝上型电脑、个人数字助理、移动上网终端设备或可穿戴式设备等。第一服务器连接在电子设备与单体服务(即单体服务器)之间,同时也连接在电子设备与微服务(微服务器)之间。在本实施例中,该第一请求为第一应用有关的请求,第一应用有对应的单体服务和微服务,微服务的数量可以有多个,第一应用的所有功能可全放在该单体服务,第一应用的每一个功能也可以分散在这些微服务中。步骤S102:响应于第一请求,按照单体应用的第一预设流量比例以及微服务的第二预设流量比例,向单体服务或者微服务发送第二请求。其中,第二请求基于第一请求生成,可以理解,第一请求与第二请求请求的内容相同,例如,第一请求用于请求某张图片,则第二请求也请求该张图片,第一请求用于请求某个视频,则第二请求也请求该视频等。收到第一请求后,可按照单体应用的第一预设流量比例以及微服务的第二预设流量比例,确定是向单体服务还是向微服务发送第二请求。可以理解流量为单位时间内的请求数量,即流量与请求有关,第一服务器为流控器,向单体服务和微服务分配流量,即进行流量控制。作为一个示例,第一预设流量比例与第二预设流量比例之和可以为1,例如,第一预设流量比例为70%,第二预设流量比例为30%。在本申请的请求发送方法中,响应第一请求,按照第一应用的单体服务的第一预设流量比例以及所述第一应用的微服务的第二预设流量比例,确定向所述单体服务还是向所述微服务发送基于第一请求生成的第二请求,即向单体服务或微服务器发本文档来自技高网
...

【技术保护点】
1.一种请求发送方法,其特征在于,应用于第一服务器,所述方法包括:/n接收电子设备发送的第一应用相关的第一请求;/n响应于所述第一请求,按照所述第一应用的单体服务的第一预设流量比例以及所述第一应用的微服务的第二预设流量比例,向所述单体服务或者所述微服务发送第二请求,其中,所述第二请求基于所述第一请求生成。/n

【技术特征摘要】
1.一种请求发送方法,其特征在于,应用于第一服务器,所述方法包括:
接收电子设备发送的第一应用相关的第一请求;
响应于所述第一请求,按照所述第一应用的单体服务的第一预设流量比例以及所述第一应用的微服务的第二预设流量比例,向所述单体服务或者所述微服务发送第二请求,其中,所述第二请求基于所述第一请求生成。


2.根据权利要求1所述的方法,其特征在于,向所述微服务发送第二请求之后,还包括:
接收所述微服务响应于所述第二请求发送的第一返回结果;
将所述第一返回结果发送给所述电子设备。


3.根据权利要求2所述的方法,其特征在于,向所述微服务发送第二请求之后,还包括:
在满足预设发送条件的情况下,向所述单体服务发送第三请求,所述第三请求基于所述第一请求生成,且与所述第二请求请求的内容相同;
接收所述单体服务响应于所述第三请求发送的第二返回结果。


4.根据权利要求3所述的方法,其特征在于,所述接收所述微服务响应于所述第二请求发送的第一返回结果之后,还包括:
获取所述第一返回结果与所述第二返回结果的比对结果;
在所述比对结果为不一致的情况下,输出提示信息,所述提示信息用于提示所述第一返回结果与所述第二返回结果不一致。


5.根据权利要求4所述的方法,其特征在于,所述获取所述第一返回结果与所述第二返回结果的比对结果,包括:
将所述第一返回结果与所述第二返回结果发送给第二服务器;
接收所述第二服务器发送的对所述第一返回结果与所述第二返回结果进行比对得到的所述比对结果。


6.根据权利要求1所述的方法,其特征在于,所述向所述单体服务或者所述微服务发送第二请求之后,还包括:
在检测到所述微服务发生异常的情况下,将流量切换到所述单体服务。


7.一种请求发送装置,其特征在于,应用于第一服务器,所述装置包括:
第一接收模块,用于接收电子设备发送的第一请求;
第一发送模块,用于响应于所述第一请求,按照所述单体应用的第一预设流量比例以及所述微服务的第...

【专利技术属性】
技术研发人员:赵历刘嘉祥
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1