- 博客(8)
- 收藏
- 关注
原创 Redis哨兵机制
前言:上次讲的有点匆忙,只讲了个大概,这次我们详细解释下哨兵的实现原理。 正文:哨兵的作用主要是监控、通知、故障转移,监控指的是对Redia集群节点的监控,通知强调哨兵与哨兵、哨兵与节点之间的通信机制,故障转移是面临突发事件时,哨兵机制的应急措施。下面我们具体展开来讲; 监控 哨兵一般每隔10s发送info指令来获取其他哨兵和redis节点的状态及相关信息,每隔1s保持心跳机制的通信。监控流程如下: 1.首先哨兵1向主节点发送info指令,并保存哨兵和主节点的状态信息,接...
2020-08-26 17:21:30 213
原创 Redis知识点总结
一.Redis介绍 Redis是开源的内存数据库,基于BSD协议,是一种NoSQL菲关系型数据库,单机支持10W QPS,网络请求模块实现了单线程,但其他模块还是多线程,至于为什么单线程,官方介绍是CPU不是瓶颈,内存和带宽才是,也是为了避免多线程引发的一系列并发问题,但Redis 6.5引入了多线程提升了性能。Redis不仅是数据库,也可用作缓存、消息中间件等。 二.数据类型 Redis优于当前主流的memcached和Map的一大好处是支持多种数据类型,有String,hash...
2020-08-26 12:01:51 262
原创 java阻塞队列
1.介绍: 一个支持两个附加操作的队列,两个附加的操作支持阻塞的插入和移除操作。 在阻塞队列不可用时,两个附加操作提供了4种处理方式:抛出异常、返回特殊值、一直阻塞和超时退出。jdk7提供了7个阻塞队列:‘ 1.ArrayBlockingQueue:数组结构组成的有界阻塞队列 默认情况下不保证线程公平的访问队列,保证公平性会降低吞吐量。访问者的公平性是使用重...
2018-06-09 21:39:00 166
原创 kafka知识点
kafka效率优化:数据分区存储在topic内设置了多个分区,使kafka的消费者进程池能得到有序性保证和负载均衡,使得topic对应的消费组里的消费者们各自可以独享一个分区。如此的话,每个消费者是其消费的分区的唯一reader,在单个reader下当然保证了有序这件事。而且多个分区也使得负载可以比较平衡。具体流程:1. Producer根据指定的partition方法,将消息发布到指定topic...
2018-05-10 12:34:21 140
转载 spring事务管理实战
bean.xml: <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springf
2018-05-05 22:45:10 201
原创 ssm设置日志拦截器写入日志信息至数据库
新建maven项目,pom.xml中jar包如下:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven....
2018-05-05 18:27:33 1390
原创 Java并发机制的底层实现原理
volatile的定义与实现原理 先了解CPU的术语:内存屏障、缓冲行、原子操作、缓冲行填充、缓存命中、写命中、写缺失 可见性:java线程内存模型确保所有线程看到这个变量的值是一致的 Lock前缀的指令在多核处理器会引发两件事情: 1)将当前处理器缓存行的数据 2)写回操作会使在其他CPU里缓存了该内存地址的数据无效volatile的使用优化 追加64字节能够...
2018-05-03 19:11:23 95
原创 kafka源码阅读环境搭建(gradle构建工具、idea)
1.安装gradle工具,下载地址:https://gradle.org/next-steps/?version=4.7&format=all2.配置环境变量,GRADLE_HOME,path,注意:要在系统变量中配置3.cmd进入dos窗口,gradle -v查看版本4.下载kafka源码,下载地址:http://kafka.apache.org/downloads.html5.解压ka...
2018-04-21 13:20:14 953
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人