redis实现商品销量排行榜
摘要:之前练习做过一个网上商城,采用SSM框架实现。该项目有一个商品排行榜模块没有实现,决定采用springboot+dubbo+redis实现该模块。 1.新建springboot项目。 本项目的springboot版本号为: 引入dubbo及redis起始依赖。 2.application.prope
阅读全文
RPC原理
摘要:rpc原理 一次rpc过程调用 BIO(blocking IO) 一个请求创建一个线程。 NIO(非阻塞式IO) netty工作原理
阅读全文
高可用
摘要:1.zookeeper注册中心宕机 现象:zookeeper注册中心宕机仍然可以消费dubbo暴露的服务。 原因:注册中心宕掉之后,服务提供者语与服务消费者仍能通过本地缓存通讯。 2.与dubbo直连 与dubbo直连,可以不通过注册中心获取服务。 3.负载均衡机制 在集群负载均衡时,Dubbo 提
阅读全文
Srpingboot与dubbo整合的三种方式
摘要:1)导入dubbo-stater,在application.properties中配置属性,使用@Servcie注解暴露服务,使用@Reference引用服务。@EnableDubbo注解(开启dubbo功能)与dubbo.scan.base-packages=com.moon功能相同 2)导入du
阅读全文
本地存根
摘要:远程服务后,客户端通常只剩下接口,而实现全在服务器端,但提供方有些时候想在客户端也执行部分逻辑,比如:做 ThreadLocal 缓存,提前验证参数,调用失败后伪造容错数据等等,此时就需要在 API 中带上 Stub,客户端生成 Proxy 实例,会把 Proxy 通过构造函数传给 Stub ,然后
阅读全文
多版本
摘要:当一个接口实现,出现不兼容升级时,可以用版本号过渡,版本号不同的服务相互间不引用。 可以按照以下的步骤进行版本迁移: 通过version关键字来实现多版本。 老版本服务提供者配置: 新版本服务提供者配置: 服务消费者使用老版本: 使用新版本: 使用任意版本:
阅读全文
重试
摘要:重试往往与超时配合使用,幂等操作适合重试,而非幂等操作不适合重试操作。幂等操作包含了删除、修改、查询,非幂等操作包含了增加操作。 关键字为retries 使用重试,如果开启了多个服务,则会依次尝试获取这些服务。
阅读全文
dubbo属性加载顺序与启动时检查
摘要:1.dubbo属性值的加载顺序为:虚拟机参数指定、xml文件配置、dubbo.properties文件配置。 其覆盖策略如下。 启动时检查 Dubbo 缺省会在启动时检查依赖的服务是否可用,不可用时会抛出异常,阻止 Spring 初始化完成,以便上线时,能及早发现问题,默认 check="true"
阅读全文
Dubbo与springboot整合
摘要:在IDEA中创建spring-boot项目user-service-gmall以及两个module:user-service-provider、user-service-consumer。 父项目pom.xml文件如下: 父项目中包含了接口和一个bean类 user-service-provider
阅读全文
Dubbo配置监控中心
摘要:在实现了服务提供者、消费者案例之后,进行dubbo监控中心的配置。 首先下载dubbo-monitor-simple-2.5.3-assembly.tar.gz文件(链接:https://pan.baidu.com/s/1fj0_ReHJCuJQyjjK8qi3fQ 提取码:446z ),下载后解压
阅读全文
Dubbo服务者消费者提供者案例实现
摘要:Dubbo介绍 Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 核心部件功能 Remoting: 网络通信框架,实现了 sync-over-async 和 request-response 消息机制
阅读全文