dubbo弊端
- Registry 严重依赖第三方组件(zookeeper 或者 redis),当这些组件出现问题时,服务调用很快就会中断。
- Dubbo 只支持 RPC 调用。使得服务提供方与调用方在代码上产生了强依赖,服务提供者需要不断将包含公共代码的 jar 包打包出来供消费者使用。一旦打包出现问题,就会导致服务调用出错。
dubbo是一个高性能的java rpc通信框架
服务与服务之间通信
1.同步
2.异步
springcloud http
dubbo rpc
springcloud http —> 应用层协议、跨防火墙,在不同的局域网之间通信
dubbo RPC—> 远程过程调用,TCP,第四层,传输层,优点:速度快, 缺点:不能跨防火墙 只能在局域网
对内rpc 对外restful风格
为什么学微服务
逼格高 主流
spring不能开箱即用 需要进行大量的配置
springboot 新的javaee标准
springboot的优缺点
对新手无门槛切换到springboot,jar打包让部署变得很容易,devtools热部署。
缺点:背后蕴藏了巨大的学习曲线。入门容易,如果没有完整的学习spring的体系,碰到问题就一脸懵逼。
eurake与zookeeper区别
eureka底层支持高并发
多级缓存
首先从readonlycachemap里查缓存的注册表
若没有,就找readwritecachemap里缓存的注册表
如果还没有,就从内存中获取实际的注册表数据