使用dubbo仿猫眼微服务架构实战 第三天

用户模块开发

业务总结

存在的问题

1. 必须先启动服务提供者,就是必须先启动user,然后才能启动gateway。不然会报错。
这是由于dubbo的特性之一,启动检查:
(1)服务启动过程中验证服务提供者的可用性
(2)如果验证过程中出了问题 ,那么dubbo会阻止spring的启动
(3)dubbo并不建议关闭这个功能,它可以尽可能早的发现服务问题

解决办法:
		关闭对于user模块的启动检查。对于每一个使用了服务的消费者类,修改引用注解,加上check = false
	    如果这个时候调用一个没有起来的服务,调用的只是dubbo返回的一个代理对象,这个代理对象只是为了保证启动能够顺利,但是调用时会报出服务器异常的错误。

2. 如果将用户模块部署在多台的服务器上,那么gateway模块将会怎么去调用这个用户模块呢。
负载均衡:
使用dubbo仿猫眼微服务架构实战 第三天_第1张图片
dubbo负载均衡配置:
(1)服务端服务级别
(2)客户端服务级别
(3)服务端方法级别
(4)客户端方法级别
在一般的业务系统中,负载均衡一般都加在服务端。
3. 在dubbo配置文件中配置的protocol是什么

spring:
  application:
    name: meeting-user
  dubbo:
    server: true
    registry: zookeeper://localhost:2181
    protocol:
      name: dubbo
      port: 20881

dubbo的多协议支撑:dubbo支持多种协议,最常见的是dubbo协议。除此之外还包括RMI,Hessian,HTTP,Redis,Memcached等多种协议

dubbo协议:
使用dubbo仿猫眼微服务架构实战 第三天_第2张图片
由于dubbo底层使用TCP协议,而Cloud使用的HTTP协议,所以dubbo相对于cloud的速度更快。

要是要换协议,就直接就修改name节点就可以了。

影片模块的开发

使用dubbo仿猫眼微服务架构实战 第三天_第3张图片

这个模块一共涉及了8张数据表,表结构图如下所示:
使用dubbo仿猫眼微服务架构实战 第三天_第4张图片

你可能感兴趣的:(java)