- 博客(6)
- 收藏
- 关注
原创 数据库多版本并发控制(mvcc)
用于管理事务并发执行时对数据的访问和修改,保证在多个事务同时对数据库进行读写操作时,不会出现数据不一致或丢失的情况。
2024-08-14 23:02:55
379
原创 算法:差分数组
最近在重新刷leetcode,遇到了差分数组,但是居然忘记了具体做法。所以记录一下主要是用在想要对数组或矩阵进行多次的范围修改,使用该算法可以大幅减少操作次数。
2024-08-01 16:06:48
294
原创 加密算法相关知识
2.非对称加密 rsa rabin 互联网应用,用于想要进行密钥交换的场景,安全性高,但是速度慢,往往结合对称加密,先使用非对称加密传输,对称加密的密钥,然后在传输经过对称加密的信息。1.对称加密 des 3des 无需进行密钥交换的场景,如内部系统,加解密速度快,但是安全性不高。3.数字摘要算法 md5 下载文件时,文件的完整性校验,接口交互时,数据的完整性校验。模反元素:a的m(对n-1求欧拉函数)的次方,就是a对于n的模反元素。欧拉函数:对n,求所有与n且比n小的正整数数目。
2024-07-31 16:44:45
261
原创 java 线程池
在生产环境中,通常是创建一个线程池的配置类,在项目启动时创建线程池并注册为bean,然后注入的需要使用的地方。volatile则是每次 线程修改共享变量后会同步到主内存中,然后通知其他线程,变量副本失效,然后这些线程在下次用到时会到主线程中取,不保证线程安全。核心线程满了 之后,在工作队列中等待,工作队列满了之后,创建临时线程,最大线程数满了之后,对其他线程执行抛弃策略。相比较hashTasble,分段锁的最大性能优化,在于分段锁,其他部分的读写都不受影响。最大线程数一般是核心线程数的2-3倍。
2024-07-27 22:28:52
310
原创 jvm内存管理模型
线程私有,生命周期和线程相同,虚拟机栈描述的是java方法执行的线程内存模型:每个方法被执行时,java虚拟机都会同步创建一个栈帧,用于存储局部变量表,操作数栈,动态连接,方法出口等信息。方法区的一部分,class文件中除了有类的版本,字段,方法,接口等描述信息外,还有一项信息时常量池表,用于存放编译期生成的各种字面量和符号引用,这些内容将在类加载后存放到方法区的运行时常量池中,无法申请到内存抛出oom异常。一块较小的内存空间,每个线程私有,独立互不影响,记录正在执行的虚拟机字节码指令的地址。
2024-07-27 15:10:38
343
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅