摘要: 1.volatile是Java虚拟机提供的轻量级的同步机制 1.1保证可见性1.2不保证原子性1.3禁止指令重排 JMM(Java内存模型Java Memory Model,简称JMM)本身是一种抽象的概念 并不真实存在,它描述的是一组规则或规范通过规范定制了程序中各个变量(包括实例字段,静态字段和 阅读全文
posted @ 2021-03-28 23:41 Anlai_Wei 阅读(110) 评论(0) 推荐(0)
摘要: 机器信息 192.168.119.129 主 192.168.119.128 从 配置host【两台机器】 vim /etc/hosts 添加 192.168.119.129 rocketmq-nameserver1 192.168.119.129 rocketmq-master1 192.168. 阅读全文
posted @ 2021-03-28 23:12 Anlai_Wei 阅读(122) 评论(0) 推荐(0)
摘要: 总体架构 消息高可用采用2m-2s(同步双写)方式 集群工作流程 启动NameServer,NameServer起来后监听端口,等待Broker、Producer、Consumer连上来,相当于一个路由控制中心。 Broker启动,跟所有的NameServer保持长连接,定时发送心跳包。心跳包中包含 阅读全文
posted @ 2021-03-28 23:08 Anlai_Wei 阅读(136) 评论(0) 推荐(0)
摘要: 各角色介绍 Producer:消息的发送者;举例:发信者 Consumer:消息接收者;举例:收信者 Broker:暂存和传输消息;举例:邮局 NameServer:管理Broker;举例:各个邮局的管理机构 Topic:区分消息的种类;一个发送者可以发送消息给一个或者多个Topic;一个消息的接收 阅读全文
posted @ 2021-03-28 22:54 Anlai_Wei 阅读(74) 评论(0) 推荐(0)
摘要: RocketMQ是阿里巴巴2016年MQ中间件,使用Java语言开发,在阿里内部,RocketMQ承接了例如“双11”等高并发场景的消息流转,能够处理万亿级别的消息。 准备工作 下载RocketMQ http://rocketmq.apache.org/dowloading/releases/ 环境 阅读全文
posted @ 2021-03-28 21:28 Anlai_Wei 阅读(142) 评论(0) 推荐(0)
摘要: 1.比较并交换 CASDemo /** * CAS => compareAndSet * 比较并交换 */ public class CASDemo { public static void main(String[] args) { AtomicInteger atomicInteger = ne 阅读全文
posted @ 2021-03-28 21:13 Anlai_Wei 阅读(146) 评论(0) 推荐(0)
摘要: 1、需求分析 ​ 2、创建数据库和表 CREATE TABLE `user_db`.`t_user_0` ( `user_id` bigint(20) NOT NULL, `username` varchar(50) NULL, `ustatus` varchar(50) NULL, PRIMARY 阅读全文
posted @ 2021-03-28 21:03 Anlai_Wei 阅读(240) 评论(0) 推荐(0)
摘要: 1、搭建环 (1) 技术: SpringBoot2.2.1+ MyBatisPlus + Sharding-JDBC + Druid 连接池(2)创建 SpringBoot 工程 ​ (3)修改工程 SpringBoot 版本 2.2.1 ​ 引入依赖 <dependencies> <depende 阅读全文
posted @ 2021-03-28 20:39 Anlai_Wei 阅读(202) 评论(0) 推荐(0)
摘要: 1、需求分析 ​ CREATE TABLE `edu_db_1`.`course_1` ( `cid` bigint(20) NOT NULL, `cname` varchar(50) NULL, `user_id` bigint(20) NULL, `cstatus` varchar(10) NU 阅读全文
posted @ 2021-03-28 20:37 Anlai_Wei 阅读(127) 评论(0) 推荐(0)
摘要: 什么是Sharding-JDBC 1、是轻量级的 java 框架,是增强版的 JDBC 驱动2、 Sharding-JDBC(1)主要目的是:简化对分库分表之后数据相关操作。不是帮我们做分库分表,而是帮我们做数据分片和读写分离 ​ 阅读全文
posted @ 2021-03-28 20:31 Anlai_Wei 阅读(304) 评论(0) 推荐(0)
摘要: 什么是 ShardingSphere 官方文档:https://shardingsphere.apache.org/document/current/cn/overview 1、一套开源的分布式数据库中间件解决方案2、有三个产品: Sharding-JDBC 和 Sharding-Proxy3、定位 阅读全文
posted @ 2021-03-28 20:15 Anlai_Wei 阅读(666) 评论(0) 推荐(0)
摘要: Kafka 工作流程及文件存储机制 ​ Kafka 中消息是以 topic 进行分类的, 生产者生产消息,消费者消费消息,都是面向 topic的。topic 是逻辑上的概念,而 partition 是物理上的概念,每个 partition 对应于一个 log 文件,该 log 文件中存储的就是 pr 阅读全文
posted @ 2021-03-28 19:10 Anlai_Wei 阅读(103) 评论(0) 推荐(0)
摘要: 安装 去官网下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 使用xshell的xftp上传到/root目录 解压到当前目录 tar -zxvf jdk-8u181-li 阅读全文
posted @ 2021-03-28 19:09 Anlai_Wei 阅读(266) 评论(0) 推荐(0)
摘要: 前言 Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK 8和Netty 3.10.6)、使用场景进行举例,为读者介绍主流锁的知识点,以及不同的锁的适用场景。 Java中往往是按照是否含有某一特性来定义锁,我们通过特性 阅读全文
posted @ 2021-03-28 19:08 Anlai_Wei 阅读(54) 评论(0) 推荐(0)
摘要: 创建 topic [root@localhost kafka]# bin/kafka-topics.sh --zookeeper 192.168.1.102:2181 --create --replication-factor 3 --partitions 1 --topic first 选项说明: 阅读全文
posted @ 2021-03-28 18:58 Anlai_Wei 阅读(65) 评论(0) 推荐(0)
摘要: 2.1 安装部署 2.1.1 集群规划 192.168.1.102 192.168.1.103 192.168.1.104 zookeeper zookeeper zookeeper kafka kafka kafka 2.1.2 jar 包下载 http://kafka.apache.org/do 阅读全文
posted @ 2021-03-28 17:42 Anlai_Wei 阅读(76) 评论(0) 推荐(0)
摘要: 1.1 定义 Kafka 是一个分布式的基于发布/订阅模式的消息队列(Message Queue) , 主要应用于大数据实时处理领域 1.2 消息队列 1.2.1 传统消息队列的应用场景 ​ 使用消息队列的好处 1) 解耦允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。 2) 阅读全文
posted @ 2021-03-28 17:40 Anlai_Wei 阅读(123) 评论(0) 推荐(0)
摘要: 1.1 为什么要用MQ 消息队列是一种“先进先出”的数据结构​ 其应用场景主要包含以下3个方面 应用解耦 系统的耦合性越高,容错性就越低。以电商应用为例,用户创建订单后,如果耦合调用库存系统、物流系统、支付系统,任何一个子系统出了故障或者因为升级等原因暂时不可用,都会造成下单操作异常,影响用户使用体 阅读全文
posted @ 2021-03-28 17:06 Anlai_Wei 阅读(394) 评论(0) 推荐(0)