作者: liyusendesu

185 篇文章

Java-Agent 实现字节码热替换
问题背景 正在运行中的 SpringBoot 项目需要在不停机的情况下,针对某个 Aop 切面的方法体内容进行修改,需要执行字节码替换的类为: package com.test.agent.aop; @Aspect @Component public class TestAgentAop { @Be…
P0 级重大资损事故复盘
事故概述 事故背景 由于项目组某核心研发成员与项目组内其他成员发生不可调解的矛盾,导致事发当天该成员被裁,出于报复心理,该核心研发成员对正处于线上内测的项目进行了一系列损毁行为,包括: 删除线上数据库、当日数据库备份文件及相关日志文件 删除 apifox 的项目接口及相关文档,导致接口文档不可用 上…
Java 算竞操作
输入输出 简单写法 数据量不大: Scanner sc = new Scanner(System.in); int a = sc.nextInt(); char op = sc.nextLine().charAt(0); 如果比较大可以换: Scanner sc = new Scanner(new …
致母亲
母亲,我能为您做些什么? 母亲,我还能爱您再多久?   爱,一万年太久,太久 那些花儿在您的脚下成熟, 可惜白发太长,时间太短 我们时间的交集,太短   爱一万年的时间,不够 搬过的一袋袋化肥,一百斤 扛过的一袋袋盐,一百八十斤 是什么撑得起您壮汉般的身体 又是什么压垮脊柱落下了…
东湖旅者
——屈原既放,游于江潭,行吟泽畔,颜色憔悴,形容枯槁。   大湖水波滚烫,时间的反光 谁见?谁信?谁悲?谁能不覆?   一切不过是沙子 漏过大湖的缝隙,沉积 水面,推开雨滴的皱纹   沧浪之水,何濯四土 大湖之畔,芳草兴然 沧浪之水,何濯故碑 大湖之畔,早已不见 &nb…
Netty 应用与原理
Java IO 模型 本篇示例代码仓库:learn-netty 基础概念 在 I/O 操作中有这么两组概念,其中同步/异步 要和线程中的同步线程/异步线程要区分开,这里指的是同步IO / 异步IO 阻塞/非阻塞: 没有数据传过来时,读会阻塞直到有数据;缓冲区满时,写操作也会阻塞 非阻塞遇到这些情况,…
Redis 应用与原理(三)
Redis Cluster 解决方案 基础概念 首先,分析一下主从+哨兵模式带来的问题: 在主从 + 哨兵的模式下,仍然只有一个 Master 节点,当并发请求较大时,哨兵模式不能缓解写压力 在 Sentinel 模式下,每个节点需要保存全量数据,无法进行海量数据存储 因此,在 Redis 3.0 …