使用PHP构建服务治理框架

2021-05-16 10:27

阅读:473

标签:dubbo   serve   传输协议   代码实现   返回   方法   协议   结果   配置   

参考:
https://segmentfault.com/a/1190000010224335
https://segmentfault.com/a/1190000011581339
https://mengkang.net/1043.html
https://mengkang.net/1044.html

服务治理介绍:包含了服务提供者和服务消费者。服务提供者会把一些信息注册到注册中心,服务消费者从注册中心拉取服务信息。注册中心会根据服务状态返回可用的服务。服务提供者和服务消费者都会将他们的元数据上报到监控中心。监控中心会记录一些它们的一些请求数,负载等等数据。治理中心包括了接口路由的配置,方法路由配置,参数路由配置。服务治理包含了可视化的控制面板,在面板上可以看到有那些ip在提供这些服务,那些ip在消费这些服务等。

为什么要使用服务治理?
1、业务拓展,降低服务之间的耦合,从功能上拆分
2、使用统一的接口协议(如使用http协议、dubbo协议、自定义协议)
3、分布式系统稳定性得到保障(自动返回可用的服务)

RPC
像本地调用方法一样,调用远程的方法(服务)。RPC包括了传输协议(如http协议)和编码协议(如json)

代码实现思路:
1、实现RPC
使用_call方法调用本地不存在的类方法,然后在_call方法里面传递方法、参数发送http请求。

2、实现服务提供者
根据请求的服务名称以及参数,返回json格式结果。

2、实现注册中心
使用swoole启动一个http server,用来处理添加服务和消费服务请求。添加服务时,可将服务信息(服务名称、服务ip、服务端口、传输协议等)添加到数据库记录下来。消费请求时,根据服务名称查询服务信息。

4、自动发现(自动注册)
服务启动时向注册中心发送要注册/消费的服务,获取服务信息。

以后不断完善。

OK。

使用PHP构建服务治理框架

标签:dubbo   serve   传输协议   代码实现   返回   方法   协议   结果   配置   

原文地址:http://www.cnblogs.com/luoyunshu/p/7748065.html


评论


亲,登录后才可以留言!