
高并发
程序领域
热衷于分享程序领域知识,公众号:程序领域
展开
-
正经的聊聊分布式架构中的 redis
开篇思考Redis 为什么在系统中使用?解决了哪些问题?Redis 如何保证和数据库同步?Redis 缓存操作是在操作数据库前还是操作数据库后?话还得从上次报税说起,耳边还回绕这残留的芬芳:“SX系统,这也不能点,那也不能用!”,身为程序员的我听到总是百感交集,程序员背锅是免不了了。。。上线至今都能用的系统,突然就不行了,为什么?问题就在稳定性和系统架构上,发现问题就要吸取经验...原创 2020-04-30 09:17:33 · 617 阅读 · 0 评论 -
高并发系统一定要考虑的 Bloom Filter 布隆过滤器
开篇思考你能想到哪些方式判断一个元素是否存在集合中?布隆过滤器并不存储数据本身,那么是怎么做到过滤的?布隆过滤器实现?参数配置?一般我们用来判断一个元素是否存在,会想到用 List,Map,Set 等,会将元素先保存下来,然后进行筛选。 但是这样的形式都有一个弊端就是一定要保存数据才行,可是我们仅仅想知道是否存在数据,并不要求获取实际数据,这时候就会觉得这种方式实在是浪费空间。...原创 2020-04-29 17:03:07 · 912 阅读 · 0 评论 -
程序员你真的足够了解synchronized吗?对象的内存结构和锁升级关系了解吗?
开篇思考对象在堆中的数据结构?和锁有什么关系?对象的锁是如何升级的?还是绕不开底层。曾经一遍遍来自灵魂的追问,别再深入了,又不是为爱"鼓掌",有乐趣吗? 嘿,还真的越深入越有趣。 其实对象锁是由 Synchronized 来进行操控的,因为由虚拟机运行加锁步骤,而且各种解释都是非常抽象,所以很多人对底层加锁原理不是很理解。其实这个可以参考 JUC 里面提供的手动加锁机制来作为参考...原创 2020-04-20 14:09:13 · 353 阅读 · 0 评论 -
锁真的有那么难吗?带你详细了解各种锁
开篇思考你知道哪些锁?锁解决了哪些应用场景的问题?锁的底层实现?java 中的并发包了解吗?CAS 会有哪些问题?如何解决?AQS 是并发包的基础,实现原理是什么?synchronize 是可重入锁吗?如果上面的思考题都能直接准确回答,直接去面试吧。锁1. 悲观锁并不是某一个锁,是一个锁类型,无论是否并发竞争资源,都会锁住资源,并等待资源释...原创 2020-03-12 19:10:44 · 248 阅读 · 0 评论