模拟整个开发工作,API端是服务接口,客户端是客户端程序,客户端程序通用API代理,后面会调用后端真正的服务,真正的服务托管在Provider,是远程服务提供方,规范服务类型托管、运行、接受请求。 如下图所示,Provider复制了4份,参考其中一个代码,是 main函数。 启动后有自己的主进程去加载Bean,启动接受请求,会模拟起用Zookeeper,Zookeeper是嵌入式模拟注册中心。配置文件对应的是provider,看下核心参数: 需要配置一下Zookeeper注册中心地址,使用的协议是Dubbo原生协议。然后配置服务,服务接口暴露给客户端使用。 之前复制了4份provider,后面多启动几个服务,主要用于模拟集群,比如订单服务要起用3台、30台、300台,是一对多的过程。同理都自己的配置文件,因为在同一台机器上,配置不一样,端口要变, 在同一台机器上模拟各个不同端口。如下图所示,端口是“20893”: 模拟几台机器一个集群,当这几台实例上线以后,都会Zookeeper进行注册,输入成功以后客户端进行调用。客户端调用订单服务,订单通过ID查询订单打印下返回字符串。具体项目可以通过JDBC等链接数据库。 调度端里面是Dubbo的订单接口,模拟死循环,不断循环向客户端发请求。 客户端代理对象是proxy,proxy起客户端代理作用,获取配置文件 Beanba的配置信息,调取方法:通过创建对象调取订单接口,根据ID模拟调用情况返回结果。循环调用实际上只起用了一个客户端,只不过每隔一秒调用一次。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。