会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
DustAsh
博客园
首页
新随笔
联系
订阅
管理
2022年5月2日
B树、B+树
摘要: 参考链接: https://my.oschina.net/u/4116286/blog/3107389 一、二叉树不适合做索引结构的原因 1、若数据在插入过程形成线性链表,比如按照1234这种从大到小的顺序插入,树的高度就会无限增大,查找慢 二、平衡二叉树不适合做索引的原因: 1、搜索效率还不够高,
阅读全文
posted @ 2022-05-02 21:15 DustAsh
阅读(39)
评论(0)
推荐(0)
2022年1月28日
数据库和缓存数据双写一致性问题
摘要: 参考:https://blog.csdn.net/qq_33135813/article/details/91352093?utm_medium=distribute.wap_relevant.none-task-blog-2~default~baidujs_title~default-0.wap_
阅读全文
posted @ 2022-01-28 11:55 DustAsh
阅读(429)
评论(0)
推荐(0)
2021年9月18日
MongoDB的数据存储形式
摘要: 1、常用的json格式,key-value的形式存储,value以json字符串的形式保存; 2、bson格式,这是一种类似json的二进制存储形式,简称Binary json; bson具有三个特性:轻量、可遍历、高效;MongoDB采用bson格式的重要原因是其可遍历性。 https://blo
阅读全文
posted @ 2021-09-18 14:58 DustAsh
阅读(1890)
评论(0)
推荐(0)
2021年8月23日
ThreadLocal
摘要: 一、作用 变量实现线程之间隔离 二、原理概述: ThreadLocal<String> threadLocal = new ThreadLocal<String>(); 在某个线程内调用threadLocal.set(value)方法时,①先获取当前线程t的ThreadLocalMap map属性,
阅读全文
posted @ 2021-08-23 10:47 DustAsh
阅读(53)
评论(0)
推荐(0)
2021年8月21日
阻塞队列
摘要: java.util包下Queue接口,BlockingQueue在Queue的基础上添加了put和take两个阻塞方法。 特点:阻塞,put和take两个阻塞方法。 1、使用场景: 生产者、消费者模式,生产者通过put方法往队列里添加元素,若队列满了,put方法将阻塞等待,一旦队列容量有剩余,将唤醒
阅读全文
posted @ 2021-08-21 23:53 DustAsh
阅读(91)
评论(0)
推荐(0)
2021年7月29日
线程池
摘要: 一、为什么要使用线程池: 1、统一管理,可以控制最大线程数量,避免线程数过多造成内存不足; 2、线程频繁创建和销毁比较耗费性能,使用线程池可以重用线程,避免线程的频繁创建和销毁,提高性能。 3、直接创建线程的方式,功能比较单一,使用线程池可以实现定时任务,还能使用Future接收线程返回的处理结果。
阅读全文
posted @ 2021-07-29 07:26 DustAsh
阅读(365)
评论(0)
推荐(0)
2021年7月19日
spring-security认证授权
摘要: 转发路径 https://blog.kdyzm.cn/post/26 一、基于注解的授权使用 1、开启注解模式:@EnableGlobalMethodSecurity(securedEnable = true),可以放在springboot的启动类上,或者放在spring配置类; 2、在Contro
阅读全文
posted @ 2021-07-19 21:52 DustAsh
阅读(110)
评论(0)
推荐(0)
2021年7月11日
golang导包方式
摘要: 记录一下导包过程: 1、首先,开启go mod 模式,即在工程第一级目录下打开cmd,执行go mod init test,这样就产生go.mod文件,初始化自定义的模块,名称为test; 2、开始导入第三方包之前,设置代理,可以加快下载速度。设置代理,直接添加环境变量,GOPROXY = http
阅读全文
posted @ 2021-07-11 16:20 DustAsh
阅读(298)
评论(0)
推荐(0)
2021年6月2日
synchronized和锁的多种状态
摘要: 一、对象头 每个实例对象都有自己对应的对象头; 对象头包含Mark word(32位) 和 Klass word(32位)两部分,Klass word是一个指针,指向对象从属的Class对象;数组对象的话,还有一个用于表示数组长度的部分,占用32位也就是4个byte。 对象头结构: 一般分为普通对象
阅读全文
posted @ 2021-06-02 14:37 DustAsh
阅读(206)
评论(0)
推荐(0)
2021年5月5日
wait/notify对比park/unpark
摘要: 一、原理: 1、当thread0获得ojb的Monitor锁时,发现不满足条件,进入WaitSet变为WAITTING状态; 2、BLOCKED和WAITING状态的线程都是阻塞状态,不占用cpu;两者是由区别的,WAITING是已经获得过锁,但是又放弃了锁;BLOCKED是正在等待去获取锁; 3、
阅读全文
posted @ 2021-05-05 12:09 DustAsh
阅读(732)
评论(0)
推荐(0)
下一页
公告