摘要: 2PC 事务是最小单元,必须保证 ACID 原子性、一致性、隔离性、持久性。但是多数据源或多个系统间业务调用的时候就会有分布式事务问题了,说到分布式事务,我们可以先聊会两阶段提交。 阶段1: TM通知各个RM准备提交它们的事务分支。如果RM判断自己进行的工作可以被提交,那就对工作内容进行持久化, 再 阅读全文
posted @ 2022-02-24 17:21 吴磊的 阅读(589) 评论(0) 推荐(0) 编辑
摘要: AQS实现原理 ReentrantLock和Synchronization一样是可重入锁,Synchronization是sun公司开发,而ReentrantLock是一个叫Doug Lea的人写出来的。它控制锁的状态是通过AQS(抽象队列同步器)来实现的,说白了就是 等待队列 + CAS。 (1) 阅读全文
posted @ 2021-08-02 13:45 吴磊的 阅读(551) 评论(0) 推荐(0) 编辑
摘要: 用户空间与内核空间 对于一个应用程序即一个操作系统进程来说,它既有内核空间(与其他进程共享),也有用户空间(进程私有),它们都是处于虚拟地址空间中。用户进程是无法访问内核空间的,它只能访问用户空间,通过用户空间去内核空间复制数据,然后进行处理。为了避免用户应用导致冲突甚至内核崩溃,所以进程的寻址空间 阅读全文
posted @ 2019-01-19 16:44 吴磊的 阅读(10218) 评论(0) 推荐(4) 编辑
摘要: 简介 skywalkings是2015年开源的一款国产框架,2017年的时候加入了Apache孵化器。skywalking是分布式应用程序的性能监控工具,具有多种监控手段,作为APM工具,它具有分布式追踪、性能指标分析、应用和服务依赖分析等功能。可以通过语言探针来获取监控数据。专门是为了微服务(sp 阅读全文
posted @ 2023-06-21 16:27 吴磊的 阅读(281) 评论(0) 推荐(0) 编辑
摘要: Elasticsearch 1. 下载地址https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.0-linux-x86_64.tar.gz 2. 上传tar包并解压tar -zxvf elasticsearch- 阅读全文
posted @ 2023-05-23 22:38 吴磊的 阅读(23) 评论(0) 推荐(0) 编辑
摘要: Netty是由JBOSS提供的一个java开源框架。 Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。也就是说, Netty 是一个基于NIO的客户、服务器端编程框架。相当于简化和流线化了网络应用的编程开发过程。像dubbo、storm都 阅读全文
posted @ 2022-12-03 18:37 吴磊的 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 不可变性 String 在jdk8中 是 char value[];jdk9中式byte[] 更加节约内存空间。String 代表不可变的字符序列,对字符串重新赋值时,需要重写指定内存区域赋值,不能使用原有的value进行赋值。 /** * String代表不可变的字符序列,拥有不可变性。对字符串重 阅读全文
posted @ 2022-10-25 15:44 吴磊的 阅读(52) 评论(0) 推荐(0) 编辑
摘要: CAT安装 1. 下载 git clone https://github.com/dianping/cat.git 2. 打包 mvn clean install -DskipTests 打包好的文件在 cat\cat-home\target\cat-home.war , 改名为 cat.war 就 阅读全文
posted @ 2022-07-15 18:37 吴磊的 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 雪花算法简单来说是这样一个长整形数值。它64位,8个字节,刚好一个long,在单个节点上是有序的。如图它主要由4部分组成。 1bit:固定为0 二进制里第一个bit如果是 1,表示负数,但是我们生成的 id都是正数,所以第一个 bit 统一都是 0。41 bit:时间戳,单位毫秒 表示的数字多达 2 阅读全文
posted @ 2022-04-12 17:32 吴磊的 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 安装 首先要安装好zookeeper1. 解压安装包 tar -zxvf kafka.tgz2. 配置 vim kafka/config/server.properties3. 进入bin目录启动服务 cd kafka/bin ./kafka-server-start.sh -daemon ../c 阅读全文
posted @ 2022-02-12 23:24 吴磊的 阅读(73) 评论(0) 推荐(0) 编辑
摘要: mqtt协议 MQTT协议(消息队列遥测传输协议) 是基于 Publish/Subscribe 模式的一种低开销、低带宽占用的即时通讯协议。是基于TCP协议传输的;他也有UDP版本,叫做MQTT-SN。 Qos (消息服务质量) 消息服务质量 又称 可靠传输保证;他又有三种消息发布服务质量 支持 Q 阅读全文
posted @ 2022-02-12 16:16 吴磊的 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 最近做一个拦截器获取参数的需求 (还有一个在 controller 获取 request 的流的时候也出现了同样的问题。),本来运行的好好的,可是迭代了几个版本之后,发现所有获取流的方法都出现了问题。经过排查发现是加了几个拦截器。而 request.getInputStream() 只可以读一次。所 阅读全文
posted @ 2022-01-19 14:46 吴磊的 阅读(110) 评论(0) 推荐(0) 编辑
//生成目录索引列表