[发明专利]一种PHP跨语言统一调用系统有效
申请号: | 201910294370.3 | 申请日: | 2019-04-12 |
公开(公告)号: | CN110032458B | 公开(公告)日: | 2020-07-10 |
发明(设计)人: | 金先友;巫嘉;周银燕 | 申请(专利权)人: | 重庆天蓬网络有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京酷爱智慧知识产权代理有限公司 11514 | 代理人: | 梁爱荣 |
地址: | 401135 重*** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 php 语言 统一 调用 系统 | ||
本发明公开了一种PHP跨语言统一调用系统,包括服务提供模块、服务注册中心模块、缓存注册中心模块、服务消费模块和SDK源码生成模块,服务消费应用中的调用方调用所述服务消费模块来触发跨语言调用,服务消费模块中的服务信息查询单元向所述缓存注册中心模块的服务信息提供单元发起查询请求,以获取服务信息,并将获取的服务信息发送给所述服务消费模块的服务接口调用单元发起服务调用。本发明通过设置一个缓存注册中心模块,PHP端的服务查询都通过缓存注册中心查询并发起调用服务提供模块实现跨语言调用。
技术领域
本发明涉及多语言系统调用技术领域,尤其涉及一种PHP跨语言统一调用系统。
背景技术
SOA系统一般都会有统一的服务注册中心,注册中心一般又会采用Zookeeper作为数据的存储。PHP是适用于快速做web开发的语言,适合于互联网企业的快速迭代。业务发展到一定阶段就会涉及到多语言调用的情况,一些稳定的业务就可以使用其它语言如java重写并提供服务。此阶段就会涉及到跨语言调用的问题。PHP调用这类服务常规的做法时通过PHP的Zookeeper扩展查询Zookeeper服务器的数据并发起调用。由于该扩展长期处于无人维护状态且经常会出现PHP端经常收不到监听的Zookeeper节点变更数据,如果提供服务的节点下线不再提供服务,PHP端还是会继续调用原有的服务导致失败影响业务。如果都通过直接查询Zookeeper服务器查询服务,一次请求就会发起多次Zookeeper服务器查询,对连接数不可控,极大可能会压跨Zookeeper服务器导致所有服务不可用,常规做法对接口调用方接入方不友好,需要不断参考接口文档。
发明内容
针对现有技术中的缺陷,本发明提供一种PHP跨语言统一调用系统,设置一个缓存注册中心模块,PHP端的服务查询都通过缓存注册中心查询并发起调用,以提升调用速率。
本发明通过以下技术手段解决上述技术问题:
一种PHP跨语言统一调用系统,包括:服务提供模块、服务注册中心模块、缓存注册中心模块、服务消费模块和SDK源码生成模块;
所述服务提供模块是服务消费应用内的组件,对外提供http服务,接受来自于PHP端应用的请求,解析请求参数,执行服务相应的操作并将操作结果返回给PHP调用端;
所述服务注册中心模块接受所述服务提供模块注册服务的请求,记录下可提供服务的版本、服务器IP和端口信息,用于所述缓存注册中心模块查询使用;
所述缓存注册中心模块用于缓存所述服务注册中心模块的信息,由注册中心监听单元、服务信息推送单元、服务信息缓存单元、服务信息提供单元和服务信息查询单元组成,所述注册中心监听单元接收所述服务注册中心模块的服务变更消息,当所述注册中心监听单元收到服务变更消息后,由所述服务信息查询单元向所述服务注册中心模块查询变更后的服务信息,再交由所述服务信息推送单元将变更后的服务信息推送到所述服务信息缓存单元中缓存,以供所述服务信息提供单元查询使用;
所述服务消费模块也是服务消费应用内的组件,由服务消费应用中的调用方调用所述服务消费模块来触发跨语言调用,所述服务消费模块由服务信息查询单元和服务接口调用单元组成;所述服务信息查询单元向所述服务信息提供单元发起查询请求,以获取服务信息,并将获取的服务信息发送给所述服务接口调用单元发起服务调用;
所述SDK源码生成模块用于生成所述服务消费模块的实现代码。
进一步,所述服务信息提供单元接受所述服务信息查询单元的查询请求后,查询所述服务信息缓存单元中的服务信息并将服务信息反馈给所述服务信息查询单元。
进一步,所述服务消费应用在启动时,将服务信息发往所述服务注册中心模块注册服务,以表明该服务消费应用可以对外提供的服务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆天蓬网络有限公司,未经重庆天蓬网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910294370.3/2.html,转载请声明来源钻瓜专利网。