The invention discloses a method and system for asynchronous invocation between services. The method of asynchronous invocation between the services includes the data sent by the requestor and the address of the requested Party; the received data and the address of the requestor are saved to the distributed message queue, and the data in the distributed message queue is parsed in turn and the data is parsed in turn. The address of the requester; initiates the address according to the address of the requesting party; and imports the parsed data into the requesting party. The method of asynchronous invocation between the services is based on a highly available persistent queuing system as a storage medium to implement a highly available and distributed intermediate system, providing a stable and efficient service for asynchronous transfer of data between services.
【技术实现步骤摘要】
一种服务间异步调用的方法及系统
本专利技术涉及计算机网络
,特别涉及一种服务间异步调用的方法及系统。
技术介绍
在分布式系统中,不同的服务之间通过异步调用完成数据的传输,不对传输的结果进行确认。在一个分布式系统环境下,不同的服务之间需要进行业务数据的同步,且通常请求方/发起方不需要数据立即完成同步,而是排队后异步传输。目前存在两种主流的同步方式:1)实时的数据同步:即上游产生数据后,立即调用下游接口进行同步,阻塞等待同步完成;2)排队的数据同步:即上游产生数据后,将数据存储到MySQL或者redis中排队;编写一个脚本定时的获取MySQL/redis中的数据,调用下游接口进行同步,并阻塞等待同步完成。而上述现有技术的缺点包括如下方面:1)调用阻塞:调用下游接口采用了阻塞等待模式,无法并发处理;2)重复工作:每个业务方各自实现自己的排队同步机制,开发效率低;3)无容错机制:当下游服务响应变慢时,会导致上游处理进程大量阻塞,导致服务不可用;4)无保护机制:当出现业务峰值时,对下游的调用会随之增加,没有对下游进行限流/限并发的保护机制;5)可用性低:当MySQL/redis出现单点故障,整个系统将出现不可用问题。
技术实现思路
本专利技术提供了一种服务间异步调用的方法及系统,该方法为服务间异步调用提供简单接入、高性能、高可用的代理服务,解决了现有技术的调用出现阻塞、效率低的问题。本专利技术提供了一种服务间异步调用的方法,该方法包括:接收请求方发送的数据和被请求方的地址;将所接收的数据和请求方的地址保存到分布式消息队列中;依次解析所述分布式消息队列中的数据和请求 ...
【技术保护点】
1.一种服务间异步调用的方法,其特征在于,该方法包括:接收请求方发送的数据和被请求方的地址;将所接收的数据和请求方的地址保存到分布式消息队列中;依次解析所述分布式消息队列中的数据和请求方的地址;根据所解析的所述请求方的地址发起调用;将解析得到的所述数据传入到所述被请求方。
【技术特征摘要】
1.一种服务间异步调用的方法,其特征在于,该方法包括:接收请求方发送的数据和被请求方的地址;将所接收的数据和请求方的地址保存到分布式消息队列中;依次解析所述分布式消息队列中的数据和请求方的地址;根据所解析的所述请求方的地址发起调用;将解析得到的所述数据传入到所述被请求方。2.根据权利要求1所述的方法,其特征在于,该方法还包括:在根据所解析的所述请求方的地址发起调用前,执行如下至少一者的操作:限流校验、限并发校验。3.根据权利要求1所述的方法,其特征在于,其中,将解析得到的所述数据传入到被请求方包括:如果所述数据传入到被请求方失败,则进行设定次数的重传。4.根据权利要求1所述的方法,其特征在于,该方法还包括:在接收请求方发送的数据和被请求方的地址后,向所述请求方发送接收成功的应答。5.根据权利要求4所述的方法,其特征在于,其中,该方法还包括:在接收到请求方发送的数据和被请求方的地址后,进行权限的校验。6.一种服务间异步调用的系统,其特征在于,该系统包括:接收模块,用于接收请...
【专利技术属性】
技术研发人员:梁栋,
申请(专利权)人:北京值得买科技股份有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。