自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

哪有什么天生王者,不过是一步一个脚印

哪有什么天生王者,不过是一步一个脚印

  • 博客(28)
  • 收藏
  • 关注

原创 redis读书笔记十三 哨兵

1、哨兵机制概述哨兵机制是redis官方的高可用方案,redis主从架构下,master挂掉的情况下,slave不能主动切换为master而是需要哨兵来完成切换过程。这个过程叫failover。哨兵不止有主从切换的作用:Monitoring,监控redis实例的状态。 Notification. 当监控的redis实例的状态异常时,可以通过API通知相关人员。 Automatic ...

2019-11-24 17:01:11 148

原创 redis读书笔记十二 持久化

1、redis的两种持久化方式RDB 这种持久化方式每隔一段时间,就把当前时间点的数据快照保存到一个.rdb文件中。 AOF 每次实例接收到写命令时,就会把这条命令追加到AOF文件中。当AOF文件比较大时,redis可以新建一个文件继续写入。 可以同时开启AOF和RDB持久化,此时如果机器重启会使用AOF文件来恢复数据,因为AOF文件的数据更完整。2、RDB持久化方案的优点RDB文件...

2019-11-24 10:37:24 90

原创 redis读书笔记十一 redis主从

1、保证redis主从实例,数据一致的机制当客户端对master执行写操作,过期key操作或因为达到最大内存删除key等改变数据集的操作时,只要副本与master连接,master就向副本发送相应的数据修改命令。 当副本与master断开连接后,比如因为网络故障或重启等原因。当副本与master恢复连接后,会尝试与master进行一次部分同步数据,以同步断开连接期间丢失的数据。如果无法达到增...

2019-11-19 23:09:40 204

原创 redis读书笔记十 数据类型

1、redis的数据类型String Lists 底层数据结构是linked lists Sets 不重复的String 类型元素的集合 Sorted Sets 和Sets类似,但是每个元素都绑定了一个score,用来排序 Hashes 底层是一个map,包含了多个field和value对 Bitmaps 这个其实还是string类型,只是redis提供了一些命令可...

2019-11-17 19:41:13 124

原创 redis读书笔记九 KeySpace通知

客户端可以订阅特定的PUB/SUB 通道,当redis的dataset 发生改变时,redis就会向这些通道发送通知。会发送通知的操作如下影响key的命令 收到LPUSH命令的key 在database0过期的key redis的订阅功能不可靠,如果订阅了某个通道的客户端断开了连接,那么及时后面这个客户端重新连接,断线期间的通知客户端也收不到了,所以如果你的系统要求可靠的通...

2019-11-17 16:20:38 556 1

原创 redis读书笔记八 分布式锁

1、单机架构下实现分布式锁获取锁的命令SET resource_name my_random_value NX PX 30000如果resource_name不存在,则客户端就能set成功,成功获取到锁,过期时间设置为30000ms。客户端处理完业务后,通过DEL命令删除resource_name,从而释放锁。设置过期时间是为了防止死锁,例如由于网络断开,或者客户端业务处理过程...

2019-11-17 15:40:51 109

原创 redis读书笔记七 分区

1、为什么要分区?分区可以把redis的数据保存在不同的redis实例上,可以使用多台机器的内存存储数据,同时可以利用多台机器的处理能力处理请求。2、分区的几种算法? 根据key的范围分区。当key是数字时,我们可以把不同范围的key保存到不同的机器上。这种方式需要维护一张映射表,不推荐。 取余法。使用一种hash算法得到key的hash值,假设有n台redis实例,则使用...

2019-11-17 14:30:05 151

原创 redis读书笔记六 事务

MULTI,EXEC,DISCARDandWATCH这几个命令是redis事务的基础。1、这些命令可以保证事务中的一组命令的下面两个特点:事务中的命令按输入的顺序执行。在事务执行过程中,其它的命令不能被执行。 要么所有的命令都不执行,要么所有的命令都执行。EXEC命令一旦执行,则事务中的所有命令都会被执行,否则所有的命令都不会被执行。当使用AOF持久化时,redis会保证一次...

2019-11-16 20:08:46 87 1

原创 redis读书笔记五 redis 缓存清除策略

1、设置redis使用的最大缓存,只有设置了redis的最大缓存,当redis缓存达到设置值时才会执行设置的缓存清除策略。可以在redis.conf文件中设置,也可以在redis运行过程中,使用CONFIG SET命令设置。maxmemory 100mb2、redis的缓存清除策略noeviction: 当达到最大缓存后,客户端再执行使缓存增大的操作时直接返回错误。all...

2019-11-16 19:08:11 712

原创 redis读书笔记四 EXPIRE

1、什么操作会影响expire设置的过期时间?删除过期时间,只有替换了key对应的value,才会清除key对应的过期时间。如SET、DEL、GETSET命令会清除过期时间,而LPUSH,或INCR等命令不会影响过期时间。使用RENAMEkeynewkey时,key的过期时间会转移到newkey上。PERSIST命令可以清除一个key的过期时间。对一个已经设置过过期时间的k...

2019-11-16 17:10:38 376

原创 redis读书笔记三 内存优化

1、Hashes, Lists, Sorted Sets、元素是integers的Sets ,对于这四种集合类型,当它们的元素数量和元素的大小不超过配置值时,reids会以一种特殊的编码保存,最多可以节省10倍空间,平均可以节省5倍空间。下面是相应的配置hashs类型配置hash-max-zipmap-entries 512 (hash-max-ziplist-entries for R...

2019-11-16 16:06:36 175

原创 redis读书笔记二 PUB/SUB功能

1、订阅channel,下面的例子订阅了foo bar两个通道。一旦client执行了subscribe命令,就进入pub/sub状态,后续就只能发送SUBSCRIBE,PSUBSCRIBE,UNSUBSCRIBE,PUNSUBSCRIBE,PINGandQUIT命令,不能发送其它的命令。并且subscribe和unsubscribe命令的结果也是通过message的形式通知给c...

2019-11-16 14:49:10 138

原创 redis读书笔记一 Pipelining

1、为什么要使用pipeliningredis client 向redis server每次发送请求时,client需要收到redis server响应后才能继续发送下一个请求,而每个请求过程中,client需要先把数据传到server, 然后server再把数据传回client,这两个过程都需要时间,网络状态越差,时间越长,这个时间叫RTT (Round Trip Time)。而redi...

2019-11-16 12:01:21 166

转载 dubbo读书笔记15 推荐用法

推荐用法在 Provider 端尽量多配置 Consumer 端属性原因如下:作服务的提供方,比服务消费方更清楚服务的性能参数,如调用的超时时间、合理的重试次数等 在 Provider 端配置后,Consumer 端不配置则会使用 Provider 端的配置,即 Provider 端的配置可以作为 Consumer 的缺省值[1]。否则,Consumer 会使用 Consumer ...

2019-11-05 17:23:34 147

转载 dubbo读书笔记14 配置规则

配置规则查看老版本配置规则。覆盖规则是Dubbo设计的在无需重启应用的情况下,动态调整RPC调用行为的一种能力。2.7.0版本开始,支持从服务和应用两个粒度来调整动态配置。概览请在服务治理控制台查看或修改覆盖规则。 应用粒度 # 将应用demo(key:demo)在20880端口上提供(side:provider)的所有服务(scope:application)的权重修...

2019-11-05 17:18:55 200

转载 dubbo读书笔记13 路由规则

路由规则在此查看老版本路由规则(2.6.x or before)路由规则在发起一次RPC调用前起到过滤目标服务器地址的作用,过滤后的地址列表,将作为消费端最终发起RPC调用的备选地址。条件路由。支持以服务或Consumer应用为粒度配置路由规则。 标签路由。以Provider应用为粒度配置路由规则。后续我们计划在2.6.x版本的基础上继续增强脚本路由功能,老版本脚本路由规则配置方式...

2019-11-04 20:56:11 397

转载 dubbo读书笔记12 令牌验证

令牌验证通过令牌验证在注册中心控制权限,以决定要不要下发令牌给消费者,可以防止消费者绕过注册中心访问提供者,另外通过注册中心可灵活改变授权方式,而不需修改或升级提供者可以全局设置开启令牌验证:<!--随机token令牌,使用UUID生成--><dubbo:provider interface="com.foo.BarService" token="true" ...

2019-11-04 20:38:52 154

转载 dubbo读书笔记11 连接控制

服务端连接控制限制服务器端接受的连接不能超过 10 个[1]:<dubbo:provider protocol="dubbo" accepts="10" />或<dubbo:protocol name="dubbo" accepts="10" />客户端连接控制限制客户端服务使用连接不能超过 10 个[2]:<dubbo:re...

2019-11-04 20:37:14 67

转载 dubbo读书笔记10 并发控制

并发控制配置样例样例 1限制com.foo.BarService的每个方法,服务器端并发执行(或占用线程池线程数)不能超过 10 个:<dubbo:service interface="com.foo.BarService" executes="10" />样例 2限制com.foo.BarService的sayHello方法,服务器端并发执行(...

2019-11-04 20:35:32 135

转载 dubbo读书笔记九 mock服务返回值

本地伪装[1]通常用于服务降级,比如某验权服务,当服务提供方全部挂掉后,客户端不抛出异常,而是通过 Mock 数据返回授权失败。在 spring 配置文件中按以下方式配置:<dubbo:reference interface="com.foo.BarService" mock="true" />或<dubbo:reference interface="c...

2019-11-04 20:30:56 765

转载 dubbo读书笔记八 事件通知

事件通知在调用之前、调用之后、出现异常时,会触发oninvoke、onreturn、onthrow三个事件,可以配置当事件发生时,通知哪个类的哪个方法[1]。服务提供者与消费者共享服务接口interface IDemoService { public Person get(int id);}服务提供者实现class NormalDemoService im...

2019-11-04 20:26:11 131

转载 dubbo读书笔记七 上下文信息

上下文信息上下文中存放的是当前调用过程中所需的环境信息。所有配置信息都将转换为 URL 的参数,参见schema 配置参考手册中的对应URL参数一列。RpcContext 是一个 ThreadLocal 的临时状态记录器,当接收到 RPC 请求,或发起 RPC 请求时,RpcContext 的状态都会变化。比如:A 调 B,B 再调 C,则 B 机器上,在 B 调 C 之前,RpcCo...

2019-11-04 20:20:23 103

转载 dubbo读书笔记六 服务分组

服务分组当一个接口有多种实现时,可以用 group 区分。服务<dubbo:service group="feedback" interface="com.xxx.IndexService" /><dubbo:service group="member" interface="com.xxx.IndexService" />引用<dubbo...

2019-11-04 19:45:57 74

转载 dubbo读书笔记五 多注册中心

多注册中心Dubbo 支持同一服务向多注册中心同时注册,或者不同服务分别注册到不同的注册中心上去,甚至可以同时引用注册在不同注册中心上的同名服务。另外,注册中心是支持自定义扩展的[1]。多注册中心注册比如:中文站有些服务来不及在青岛部署,只在杭州部署,而青岛的其它应用需要引用此服务,就可以将服务同时注册到两个注册中心。<?xml version="1.0" encodin...

2019-11-04 19:44:15 134

转载 dubbo读书笔记四 多协议

多协议Dubbo 允许配置多协议,在不同服务上支持不同协议或者同一服务上同时支持多种协议。不同服务不同协议不同服务在性能上适用不同协议进行传输,比如大数据用短连接协议,小数据大并发用长连接协议<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/sc...

2019-11-04 19:40:38 82

转载 dubbo读书笔记三之负载均衡

负载均衡在集群负载均衡时,Dubbo 提供了多种均衡策略,缺省为random随机调用。可以自行扩展负载均衡策略,参见:负载均衡扩展负载均衡策略Random LoadBalance随机,按权重设置随机概率。 在一个截面上碰撞的概率高,但调用量越大分布越均匀,而且按概率使用权重后也比较均匀,有利于动态调整提供者权重。RoundRobin LoadBalance轮询,按公...

2019-11-03 19:32:04 60

转载 dubbo读书笔记二 集群容错

集群容错在集群调用失败时,Dubbo 提供了多种容错方案,缺省为 failover 重试。各节点关系:这里的Invoker是Provider的一个可调用Service的抽象,Invoker封装了Provider地址及Service接口信息 Directory代表多个Invoker,可以把它看成List<Invoker>,但与List不...

2019-11-03 19:17:10 71

转载 dubbo学习笔记1之 dubbo配置

1、配置1.1 xml配置Provider配置<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo="http://dubbo.apache.org/schema/dubbo" xmlns="http://www.springframework.org/sche...

2019-11-03 19:07:58 1222

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除