jvm 参数

参考: JVM调优参数大全及G1GC调优 java g1垃圾收集器优化参考 1. 概述 JVM 启动参数分为三类 类别 说明 标准参数(-) 所有的 JVM 实现都必须实现这些参数的功能,而且向后兼容; 非标准参数(-X) 这些参数不是虚拟机规范规定的。因此,不是所有VM的实现(如:HotSpot,

JVM 

jvm 工具

1. jps 作用:查询 java 进程 jps [-q] [-mlvV] [<hostid>] 15653 Launcher 15574 15654 Application 536 15805 Jps q: 只输出进程号 m: 输出main method的参数 l: 输出完全的包名,应用主类名

JVM 

htop 命令

参考:htop使用详解

redis 热点 key 和 大 key

参考文档: 【原创】谈谈redis的热key问题如何解决 JAVA秘籍之Redis BigKey 1. hot key 1.1 什么是热点 key 问题 其实 热 key 问题说来也很简单,就是瞬间有几十万的请求去访问 redis 上某个固定的 key,从而压垮缓存服务的情况。其实生活中也是有不少这

Redis 

跳跃表

参考文档:什么是跳跃表? 1. 什么是跳跃表 跳跃表(Skip List)是一种基于有序链表的扩展,简称跳表。 其实就是使用关键节点作为索引的一种结构。 怎样能更快查找到一个有序链表的某一节点呢? 可以利用类似索引的思想,提取出链表中的部分关键节点 比如: 给定一个长度是 7 的有序链表,节点值依次

链表 

redis 常见问题

参考文档:一文读懂Redis 1. 数据一致性 链接:数据一致性问题 在分布式环境下,缓存和数据库很容易出现数据一致性问题,如果项目对缓存的要求是强一致性,那就不要使用缓存。 我们只能在项目中使用策略降低缓存与数据库一致性的概率,是无法保障两者的强一致性,一般策略包括缓存更新机制,更新数据库后及时更

Redis 

redis 实现分布式锁

参考文档: Redis实现分布式锁 在单体应用中,如果我们对共享数据不进行加锁操作,会出现数据一致性问题,我们的解决办法通常是加锁。 在分布式架构中,我们同样会遇到数据共享操作问题,本文章使用 Redis 来解决分布式架构中的数据一致性问题。 1. 单机数据一致性 单机数据一致性架构如下图所示:多个

数据一致性问题

参考文档: 缓存和数据库到底先写哪个? 1. 引出问题 在数据库和缓存一致性问题上,有以下几个操作 先删缓存,再更新数据库 先更新数据库,再更新缓存 先更新数据库,再删缓存 第一种方式 这个是逻辑是错误的。试想,两个并发操作,一个是更新操作,另一个是查询操作,更新操作删除缓存后,查询操作没有命中缓存

redis 过期策略和内存淘汰策略

参考文档: redis 的过期策略都有哪些?内存淘汰机制都有哪些? Redis的数据过期清除策略 与 内存淘汰策略 Redis的LFU算法源码实现解析 1. 过期策略 Redis 是 key-value 数据库,我们可以设置 Redis 中缓存的 key 的过期时间。Redis 的过期策略就是指当

Redis 

快速排序

参考文献: 快速排序算法

排序