摘要: 一、应用场景 内核优化:快速上传/下载文件(fileChannel至socketChannel) 内核优化:快速拷贝文件(fileChannel至fileChannel) 二、产生原因 上传/下载文件:传统网络传输文件时,数据需要经过4次数据拷贝,分别为网卡到内核缓存、内核到用户缓存、用户到内核缓存 阅读全文
posted @ 2022-04-26 17:03 SArtOnline 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 一、Innodb引擎 描述 X 表、行 排他锁,与所有其他锁互斥(select .. for update; update; delete;) S 表、行 共享锁,可并发,仅与排他锁互斥(select .. lock in share mode;) IX 表 意向排他锁,表标志位,方便DDL和DML 阅读全文
posted @ 2022-04-22 11:58 SArtOnline 阅读(22) 评论(0) 推荐(0) 编辑
摘要: windows批量删除.lastUpdated文件(lastUpdated文件会阻止mvn更新仓库) 在mvn仓库地址外新建refreshRepo.bat,拷贝以下代码并双击执行 @echo off set workingDir=%~dp0 echo %workingDir% setlocal en 阅读全文
posted @ 2022-04-22 11:28 SArtOnline 阅读(533) 评论(0) 推荐(0) 编辑
摘要: 一、应用场景 JVM在运行时代码自动优化(C1和C2) JVM自动优化减缓频繁GC JDK1.7版本自动开启逃逸分析 二、产生原因 对象逃逸:方法未满足闭包,对象引用被外部引用;通过返回值、静态赋值、自我调用等方式(C2编译器无法进行OSR优化On Stack Statement) 加锁方法:没有高 阅读全文
posted @ 2022-04-21 12:02 SArtOnline 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 一、应用场景 大量扫码/刷卡交易订单日志传输 日志采集 二、产生原因 日志采集客户端(Producer): 超时重传,日志重复(enable.idempotence=false重复发送) 消息失败,未持久化(acks=0不重试;或acks=1但leader闪退) 批量发送,数据乱序(max.in.f 阅读全文
posted @ 2022-04-19 14:39 SArtOnline 阅读(458) 评论(0) 推荐(0) 编辑
摘要: 一、应用场景 Eureka服务自动注册(tomcat启动后自动注册服务) 二、工作原理 ApplicationEvent:发布/订阅的通信媒介,应用事件。默认有上下文事件(contextClosedEvent等) ApplicationEventPublisher:发布者;可发布Applicatio 阅读全文
posted @ 2022-04-14 18:17 SArtOnline 阅读(1368) 评论(0) 推荐(0) 编辑
摘要: 一、使用场景 缓存数据安全性有要求 缓存存储规模大 缓存高并发读写 二、工作原理 主从复制 全量复制:主节点bgsave,写缓冲区;从节点清空后复制到bgsave点后,执行缓冲区里所有写操作。如果从节点有AOF,则执行bgwriteaof。(全量复制,在bgsave量特别大时,从节点会陷入死循环重连 阅读全文
posted @ 2022-04-12 15:11 SArtOnline 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 一、应用场景 业务缓存数据持久化 主从同步 缓存数据恢复 二、工作原理 RDB持久化 Redis会fork一个子进程,每5分钟一次将内存快照写入临时文件,持久化完成后,替换上一个持久化文件。 AOF持久化 Redis会把写操作追加写入内存缓冲区,每秒钟将内存缓冲区fsync到持久化文件。当AOF持久 阅读全文
posted @ 2022-04-12 11:13 SArtOnline 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 一、应用场景 提交订单30分钟未支付,自动取消订单 流程挂起2小时后,自动恢复流程 二、工作原理 Redis高性能 + 定时任务 + zset zset:设置时间戳作为score,每次取即将过期任务执行 定时任务:轮询zset,取出到期任务执行 三、用例 提交延迟任务 jedis.zadd(queu 阅读全文
posted @ 2022-04-12 10:39 SArtOnline 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 1.Redis内存分析 Localhost:8379> info memory 因为内存碎片的存在,Used_memory_rss通常大于used_memory,如果开启磁盘swap作为内存,此时出现used_memory_rss小于used_memory,因为磁盘读写速度远小于内存读写速度,所以开 阅读全文
posted @ 2022-04-11 21:58 SArtOnline 阅读(260) 评论(0) 推荐(0) 编辑