会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
HexThinking
鲜衣怒马少年时
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
3
4
5
6
7
8
9
10
下一页
2023年2月12日
Java的单继承与多实现
摘要: Java和C、C++不同,C和C++允许多继承多实现,但是Java不能: Java是单继承的(extends),所谓单继承是指当前子类只能有一个直接的父类;在多继承的情况下如果多个父类有相同的方法那么实现的时候会造成含糊不清; Java是多实现的 (implements),一个子类可以同时实现多个接
阅读全文
posted @ 2023-02-12 10:01 HexThinking
阅读(181)
评论(0)
推荐(0)
2023年2月11日
Java并发三大问题之可见性
摘要: JMM中的L1和L2缓存虽然较好地缓解了CPU与内存之间巨大的读取速度差异带来的cpu使用率过低问题,但是同时却不可避免的带来了其它方面问题,比如可见性问题,⼀个线程对共享变量的修改,另外⼀个线程能够⽴刻看到,我们称为可⻅性。譬如主内存中有一个静态变量 x=0,线程A通过复制将x=0先复制到L2再复
阅读全文
posted @ 2023-02-11 15:28 HexThinking
阅读(28)
评论(0)
推荐(0)
2023年2月10日
JMM模型
摘要: Java内存模型规定,将所有的变量都存放在 主内存 中,当线程使⽤变量时,会把主内存⾥⾯的变量 复制 到⾃⼰的⼯作空间或者叫作 私有内存 ,线程读写变量时操作的是⾃⼰⼯作内存中的变量,这里也就说明了Java的传递方式是值传递而非引用传递。用一张图来描述一下: 为了平衡内存/IO 短板,会在 CPU
阅读全文
posted @ 2023-02-10 10:21 HexThinking
阅读(39)
评论(0)
推荐(0)
2023年1月23日
代理模式详解
摘要: 代理模式
阅读全文
posted @ 2023-01-23 11:43 HexThinking
阅读(21)
评论(0)
推荐(0)
2023年1月21日
缓存穿透、缓存击穿与缓存雪崩
摘要: 缓存穿透 概念 访问一个缓存中不存在的key,请求会打到db上,流量大时db会挂掉; 解决方案 1.使用布隆过滤器,用于存储可能访问的key,不存在的key直接被过滤; 2.访问key未在db查询到值,但还是将空值写入缓存,但可以设置较短的过期时间; 缓存击穿 概念 一个缓存中存在的key,在缓存过
阅读全文
posted @ 2023-01-21 12:10 HexThinking
阅读(33)
评论(0)
推荐(0)
2023年1月17日
Redis内存淘汰策略
摘要: 查看redis内存 查看内存大小命令:```config get maxmemory```如果内存大小为0表示没有设置最大内存大小,在64位操作系统下则不限制内存大小,在32位操作系统下最多使用3GB内存;当redis设置内存最大大小时,内存占满时需要用到内存淘汰策略;设置redis最大内存:```
阅读全文
posted @ 2023-01-17 23:11 HexThinking
阅读(114)
评论(0)
推荐(0)
2023年1月16日
redis时间过期策略
摘要: redis的时间过期策略为 `定期删除 + 惰性删除`。 定期删除 定期删除是指Redis默认每隔 100ms 就 随机抽取 一些设置了过期时间的key,检测这些key是否过期,如果过期了就将其删除; 正因为定期删除只是随机抽取部分key来检测,这样的话就会出现大量已经过期的key并没有被删除,这就
阅读全文
posted @ 2023-01-16 23:19 HexThinking
阅读(50)
评论(0)
推荐(0)
2023年1月15日
Redis数据类型与相关使用场景
摘要: 前言 Redis数据类型一共8种,其中广为人知的有5种: string、list、set、zset和hash 另外,还有3种特殊的数据类型: Geospacial、hyperloglog和bitmap 1.string string类型可以用作计数器,比如博客访问量,因为redis在计算时是单线程的
阅读全文
posted @ 2023-01-15 22:50 HexThinking
阅读(66)
评论(1)
推荐(1)
2023年1月14日
JAVA是引用传递还是值传递
摘要: 我们先不上结论,接下来一点点推导: public static void main(String[] args) { SpringApplication.run(Main.class, args); log.info("项目启动成功"); int a=1; add(a); log.info("a:{
阅读全文
posted @ 2023-01-14 12:22 HexThinking
阅读(29)
评论(0)
推荐(0)
2023年1月13日
几种MQ详解
摘要: 如何选择MQ 一般的业务系统要引入 MQ,最早大家都用 ActiveMQ,但是现在确实大家用的不多了,没经过大规模吞吐量场景的验证,社区也不是很活跃,所以大家还是算了吧,我个人不推荐; 后来大家开始用 RabbitMQ,但是确实 erlang 语言阻止了大量的 Java 工程师去深入研究和掌控它,对
阅读全文
posted @ 2023-01-13 23:06 HexThinking
阅读(68)
评论(0)
推荐(0)
上一页
1
···
3
4
5
6
7
8
9
10
下一页
公告