摘要:上几次说了redis的主从,哨兵,集群配置,但是内部的选举一直没说,先来简单说一下选举吧。 集群选举 redis cluster节点间采取gossip协议进行通信,也就是说,在每一个节点间,无论主节点还是从节点,他们之间都是存在相互通信的。例如你的redis端口号是6379,那么你的gossip协议 阅读全文
posted @ 2019-10-28 14:30 小菜技术 阅读 (483) 评论 (0) 编辑
摘要:过去的几天里,我把JVM内部的垃圾回收算法和垃圾回收器。还剩下最后一个G1回收器没有说,我们今天数一下G1回收器和常见的参数配置。 G1回收器 G1 (Garbage-First)是一款面向服务器的垃圾收集器,主要针对配备多颗处理器及大容量内存的机器,以极高概率满足GC停顿时间要求的同时,还具备高吞 阅读全文
posted @ 2019-09-23 13:42 小菜技术 阅读 (425) 评论 (0) 编辑
摘要:今天我更新了一篇jvm垃圾回收的算法和垃圾回收器的内部逻辑,但是看的人不多啊......貌似大家还是比较喜欢看源码吧,毕竟实战要比理论用的多。 这篇文章不会详细的深入底层源码,只是基于注解和配置来说说我们的spring的使用,别小看基础,保证有你没用过的注解和配置,走起。我们先来建立一个maven项 阅读全文
posted @ 2019-09-22 19:51 小菜技术 阅读 (583) 评论 (1) 编辑
摘要:上期回顾: 上次博客我们主要说了我们juc并发包下面的ReetrantLock的一些简单使用和底层的原理,是如何实现公平锁、非公平锁的。内部的双向链表到底是什么意思,prev和next到底是什么,为什么要引入heap和tail来值向null的Node节点。高并发时候是如何保证state来记录重入锁的 阅读全文
posted @ 2020-01-19 16:02 小菜技术 阅读 (119) 评论 (0) 编辑
摘要:说完了我们的synchronized,这次我们来说说我们的显示锁ReetrantLock。 上期回顾: 上次博客我们主要说了锁的分类,synchronized的使用,和synchronized隐式锁的膨胀升级过程,从无锁是如何一步步升级到我们的重量级锁的,还有我们的逃逸分析。 锁的粗化和锁的消除 这 阅读全文
posted @ 2020-01-15 15:58 小菜技术 阅读 (142) 评论 (0) 编辑
摘要:上几次博客,我们把volatile基本都说完了,剩下的还有我们的synchronized,还有我们的AQS,这次博客我来说一下synchronized的使用和原理。 synchronized是jvm内部的一把隐式锁,一切的加锁和解锁过程是由jvm虚拟机来控制的,不需要我们认为的干预,我们大致从了解锁 阅读全文
posted @ 2020-01-14 15:10 小菜技术 阅读 (208) 评论 (1) 编辑
摘要:上期回顾: 上次博客我们说了我们的volatile关键字,我们知道volatile可以保证我们变量被修改马上刷回主存,并且可以有效的防止指令重排序,思想就是加了我们的内存屏障,再后面的多线程博客里还有说到很多的屏障问题。 volatile虽然好用,但是别用的太多,咱们就这样想啊,一个被volatil 阅读全文
posted @ 2020-01-14 08:32 小菜技术 阅读 (246) 评论 (2) 编辑
摘要:貌似两个多月没写博客,不知道年前这段时间都去忙了什么。 好久以前写过一次和volatile相关的博客,感觉没写的那么深入吧,这次我们继续说我们的volatile关键字。 复习: 先来简单的复习一遍以前写过的东西,上次我们说了内存一致性协议M(修改)E(独占)S(共享)I(失效)四种状态,还有我们并发 阅读全文
posted @ 2020-01-13 17:44 小菜技术 阅读 (97) 评论 (0) 编辑
摘要:安装mysql5.7单机 1.获取安装yum包 [root@iZm5e7sz135n16ua2rmbk6Z local]# wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 你可以下载到你的本地,然后上 阅读全文
posted @ 2019-11-26 11:28 小菜技术 阅读 (21) 评论 (0) 编辑
摘要:前面我们说了RabbitMQ和RocketMQ的安装和简单的使用,这次我们说一下Kafka的安装配置,后面我会用几个真实案例来说一下MQ的真实使用场景。天冷了,不愿意伸手,最近没怎么写博客了,还请见谅。 一、目标 1.知道什么是Kafka 2.懂得kafka的单机和集群安装配置 3.了解内部参数的简 阅读全文
posted @ 2019-11-19 16:52 小菜技术 阅读 (218) 评论 (0) 编辑
摘要:NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。在现代的计算系统上每天网络上都会产生庞大的数据量。这些数据有很大一部分是由关系数据库管理系统(RDBMS)来处理。 1970年 E.F.Codd's提出的关系模型的论文 "A relational model of d 阅读全文
posted @ 2019-11-11 16:31 小菜技术 阅读 (40) 评论 (0) 编辑
摘要:这次我们来说说我们的RocketMQ的安装和参数配置,先来看一下我们RocketMQ的提出和应用场景吧。 早在2009年,阿里巴巴的淘宝第一次提出了双11购物狂欢节,但是在2009年,服务器无法承受到大规模的并发,导致了大规模宕机停运,当时还是IOE的服务架构,也就是没有我们的消息队列中间件,直接由 阅读全文
posted @ 2019-11-06 22:35 小菜技术 阅读 (272) 评论 (3) 编辑
摘要:设计模式在我们的开发中是不可或缺的一部分,很多人会说,我没用那些设计模式啊,我也开发的挺好的,其实不然,我们在开发中都用到了这些设计模式,只不过我们并没有在意这些,今天我就用开车的方法来解释一下我们的7个设计原则。 简述 面向对象的设计原则有七个,包括:开闭原则、单一职责原则、里氏替换原则、迪米特原 阅读全文
posted @ 2019-11-05 14:14 小菜技术 阅读 (249) 评论 (2) 编辑
摘要:RabbitMQ安装 我这里安装是使用阿里云的CentOS7.5来安装的,使用CentOS版本低于7的可能会报错。 1.安装rabbitmq所需要的依赖包 输入$ yum install build-essential openssl openssl-devel unixODBC unixODBC- 阅读全文
posted @ 2019-10-29 15:36 小菜技术 阅读 (208) 评论 (0) 编辑
摘要:1.Redis支持的数据类型? 答:五种,在第一节redis相关的博客我就说过,String,Hash,List,Set,zSet,也就是我们的字符串,哈希,列表,集合,有序集合五种。结构图如下。 2.什么是Redis持久化?Redis有哪几种持久化方式?优缺点是什么? 答:Redis持久化主要分为 阅读全文
posted @ 2019-10-29 09:19 小菜技术 阅读 (390) 评论 (1) 编辑
摘要:上几次说了redis的主从,哨兵,集群配置,但是内部的选举一直没说,先来简单说一下选举吧。 集群选举 redis cluster节点间采取gossip协议进行通信,也就是说,在每一个节点间,无论主节点还是从节点,他们之间都是存在相互通信的。例如你的redis端口号是6379,那么你的gossip协议 阅读全文
posted @ 2019-10-28 14:30 小菜技术 阅读 (483) 评论 (0) 编辑
摘要:这次我们来简单说说分布式锁,我记得过去我也过一篇JMM的内存一致性算法,就是说拿到锁的可以继续操作,没拿到的自旋等待。 思路与场景 我们在Zookeeper中提到过分布式锁,这里我们先用redis实现一个简单的分布式锁,这里是我们一个简单的售卖减库存的小实例,剩余库存假设存在数据库内。 这样简单的实 阅读全文
posted @ 2019-10-28 08:21 小菜技术 阅读 (242) 评论 (0) 编辑
摘要:上次我们搭建了Redis的主从架构,哨兵架构以及我们的集群架构,但是我们一直还未投入到实战中去,这次我们用jedis和springboot两种方式来操作一下我们的redis 主从架构 如何配置我上次已经讲过了,https://www.cnblogs.com/cxiaocai/p/11711377.h 阅读全文
posted @ 2019-10-25 08:10 小菜技术 阅读 (338) 评论 (0) 编辑