- 博客(10)
- 问答 (1)
- 收藏
- 关注
原创 说说用户数据分库分表方案
说说大量用户数据分库分表方案1 背景2 技术选型3 分库分表方案3.1 分几个库、几张表?3.2 支持多维度查询3.3 数据迁移3.4 该方案存在问题4 写在最后1 背景当时公司"背后的靠山"决定将亿级用户数据交给我们自己维护, 这样很多跟用户身份校验相关联的API就不用再调"靠山"啦!但随之而来的问题就是这亿级数据该怎么处理呢? 数据库线上使用的MySQL, 直接单表存吗?据了解MySQL单表查询最优在五百万数据左右, 超过五百万后单表查询性能会严重下降。当时头赶紧组织了个小会, 商讨数据处理方案,
2020-06-27 20:30:43
1374
原创 说说CMS与G1垃圾收集器
说说CMS与G1垃圾收集器1 CMS收集器1.1 CMS收集器的过程1.2 CMS优点1.3 CMS缺点2 G1收集器2.1 G1的优势2.2 G1垃圾收集过程1 CMS收集器CMS收集器是以获取最短回收停顿时间为目标的老年代收集器, 所以非常适合希望停顿最短时间及要求响应速度的程序,能给用户带来更好的体验。1.1 CMS收集器的过程初始标记(STW): 只标记与GC ROOT关联的对象, 速度快。并发标记: 对初始标记标记出来的对象进行继续搜索, 标记出与之关联的对象重新标记(STW):
2020-06-26 20:05:11
419
原创 JVM中判断对象存活与死亡
JVM中判断对象存活与死亡1 引用计数法1.1 优点1.2 缺点2 可达性分析算法2.1 可以作为GC ROOT的对象3 Java中的引用类型3.1 强引用 (Strong Reference)3.2 软引用 (Soft Reference)3.3 弱引用 (Weak Reference)3.4 虚引用 (Phantom Reference)4 可达性分析算法中不可达的对象一定会被回收吗?1 引用计数法每个对象会分配一个引用计数器, 当对象被引用时, 计数器加1, 当引用失效时, 计数器减1, 当计数
2020-06-26 15:01:21
393
原创 Java内存模型与内存结构
Java内存模型与内存结构1 Java内存模型2 Java内存结构(运行时数据区域)2.1 程序计数器(线程私有)2.2 Java虚拟机栈 (线程私有)2.3 本地方法栈(线程私有)2.4 Java堆(线程共享)2.5 方法区 (线程共享)2.6 运行时常量池2.7 直接内存1 Java内存模型Java内存模型是为了屏蔽掉各种硬件和操作系统的各种访问差异,以实现让Java程序在各个平台下一致的访问内存效果。通过定义程序中各个竞争变量的访问规则, 以实现访问变量的原子性、可见性、有序性。2
2020-06-26 00:25:20
260
原创 Spring如何解决循环依赖笔记
Spring如何解决循环依赖参考资料:https://www.jianshu.com/p/230c0a87f015?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=weixin-friends&from=groupmessage&isappinstalled=0...
2019-11-05 19:44:08
470
原创 Java锁之ReentrantLock源码学习笔记
Java锁ReentrantLock之源码学习笔记1. ReentrantLock原理2. ReentrantLock类图3. ReentrantLock源码1. ReentrantLock原理2. ReentrantLock类图3. ReentrantLock源码
2019-11-04 16:38:48
237
原创 Java排序之TimSort源码学习笔记
Java排序之TimSort源码分析1. TimSort核心原理2. TimSort源码解析2.1 sort2.2 countRunAndMakeAscending2.3 binarySort2.4 mergeCollapse2.5 mergeForceCollapse2.6 mergeAt3. 总结1. TimSort核心原理TimSort是结合了插入排序和归并排序稳定的排序算法,并做了...
2019-10-30 19:50:01
3186
原创 算法时间、空间复杂度分析
算法时间、空间复杂度分析1. 为什么需要复杂度分析2. 大O复杂度表示法2.1 大O时间复杂度2.2 大O空间复杂度3. 如何进行复杂分析3.1 时间复杂度3.2 空间复杂度1. 为什么需要复杂度分析复杂度分析不依赖于代码执行环境,通过复杂度分析就可以粗略的估计代码的执行效率及空间占用,指导我们写出最优的代码、优化执行效率低的代码。2. 大O复杂度表示法大O表示法是将代码中所有的步骤转换...
2019-10-14 23:24:26
377
原创 Oracle误删、误更新数据后还原数据
Oracle误删、误更新后如何还原数据查看undo参数使用Flashback Query修复数据缘由: 同事更新表数据时误将表中所有数据全部更新,其实就想更新一行。解决办法: 使用Oracle的flashback特性之Flashback Query闪回查询技术, 前提是必须启动Undo表空间管理,版本Oracle 9i及以上。查看undo参数命令: show parameter und...
2019-09-26 19:12:29
348
原创 springboot项目中使用filter无法注入bean采坑
springboot项目中使用filter采坑1. 问题:使用@WebFilter无法注入bean2. springboot中创建filter方式1.1 @WebFilter注解1.2 使用FilterRegistrationBean方式1.3 使用DelegatingFilterProxyRegistrationBean方式1.4 将自定义Filter声明为bean,Spring初始化时自动...
2019-09-24 19:57:06
9810
空空如也
移动appHTML5一键自动拨号 急急 自动拨号那种
2015-06-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人