最新 最热

高并发场景下的缓存+数据库双写不一致问题分析与解决方案设计

库存可能会修改,每次修改都要去更新这个缓存数据; 每次库存的数据,在缓存中一旦过期,或者是被清理掉了,前端的nginx服务都会发送请求给库存服务,去获取相应的数据...

2020-09-03
0

redis如何在保持读写分离+高可用的架构下,还能横向扩容支撑1T+海量数据

redis cluster 支撑N个redis master node,每个master node都可以挂载多个slave node读写分离的架构,对于每个master来说,写就写到master,然后读就从mater对应的slave去读高可用,因为每个master都有salve节点,那么如果mater...

2020-09-03
0

Redis为什么是单线程还支持高并发

Redis为什么设计成单线程模式因为redis是基于内存的读写操作,所以CPU不是性能瓶颈,而单线程更好实现,所以就设计成单线程模式

2020-09-03
0

热点账户高并发记账方案

记账处理过程主要包括两部分,一是记录记账凭证,二是更新账户的余额。为了保证账户不被其他请求影响数据的准确性,在进行记账处理时,会先对账户的资源加锁,记账处理完毕后会自动释放锁。随着账务处理业务量的增大,账务数据库...

2020-09-03
0

Redis集群模式(Cluster)

Redis集群模式(Cluster)一. 单master在海量数据下的瓶颈 在单master的架构下,由于所有slave的数据都与master保持一致,因此Redis所能承载的数据量完全取决于master机器所在的内存。一旦出现内存不足的情况,只能进行垂直...

2020-09-03
0

Java常用并发容器总结(四)

跳表是一种可以用来快速查找的数据结构,类似于平衡树,他们都可以对元素进行快速的查找。但一个重要的区别是:对平衡树的插入往往可能导致平衡树进行一次全局的调整;而对跳表的插入和删除之需要的局部数据操作即可。这样的...

2020-09-03
0

Java常用并发容器总结(一)

众所周知,ArrayList、HashMap等类是线程不安全的,在高并发场景下无法使用。解决这个问题的办法之一是使用Collections工具类的synchronizedMap和synchronizedList等方法,将集合包装成线程安全的。...

2020-09-03
0

Java常用并发容器总结(二)

ConcurrentHashMap是一个高效并发的HashMap,它采用了减小锁粒度的手段,内部进一步细分成了若干个小的HashMap,称为Segment段。默认情况下,一个ConcurrentHashMap被分为16个段。多ConcurrentHashMap操作时,并不是将整个Co...

2020-09-03
0

高并发系统三大利器之降级

这是高并发系统三大利器的最后一篇文章了,前面两篇如果没看的话可以先去看下前面的文章《高并发系统三大利器之限流》《高并发系统三大利器之缓存》。说到服务降级,大多数人可能会认为熔断和降级是一样的。我曾经也一度...

2020-09-01
0

视频监控系统搭建为什么要使用流媒体服务器做视频分发?

大家知道TSINGSEE青犀视频有很多视频流媒体平台和辅助分发的组件,我们研发的EasyNVR、EasyDSS、EasyGBS是流媒体平台,而EasyRTMPLive就是负责拉转推的推流网关,当然还有很多其他的产品,跟大家提起的不多,以后都会慢慢跟大...

2020-09-01
0