高并发
lemonmini
这个作者很懒,什么都没留下…
展开
-
Java高并发网络编程
一、OSI网络七层模型因特网是一个极为复杂的网络,分层有助于我们对网络的理解 。分层也是一种标准,为了使不同厂商的计算机能够互相通信,以便在更大范围内建立计算机网络,有必要建立一个国际范围的网络体系结构标准。ISO组织制定了OSI网络七层模型而因特网只用到了五层低三层:屏蔽底层网络的复杂性物理层:使原始的数据比特流能在物理介质上传输。数据链路层:通过校验、确认和反馈重发等手段...原创 2019-12-05 19:20:20 · 308 阅读 · 0 评论 -
Java高并发--CPU多级缓存与Java内存模型
CPU多级缓存为什么需要CPU缓存:CPU的频率太快,以至于主存跟不上,这样在处理器时钟周期内,CPU常常需要等待主存,浪费了资源。所有缓存的出现是为了缓解CPU和主存之间速度不匹配的问题——将运算所需数据复制到缓存中,使得运算能快速进行;当运算结束后再将缓存同步回内存中,这样处理器无需等待缓慢的内存读写。缓存并非存储了所有的数据,那么它存在的意义是什么?时间局部性:如果某个数据被访问,...原创 2019-12-04 20:57:58 · 523 阅读 · 0 评论 -
Java高并发- 锁的优化及 JVM 对锁优化所做的努力
在高并发环境下,激烈的锁竞争会导致程序的性能下降,所以我们有必要讨论一下有关 锁 的性能问题及注意事项。如:避免死锁,减小锁粒度,锁分离等。一、锁优化1.1 减小锁持有时间在锁竞争过程中,单个线程对锁的持有时间与系统性能有着直接的关系,如果线程持有锁的时间很长,那么相对地,锁的竞争程序也就越激烈。示例代码:public void syncMethod(){fun1();mutextM...原创 2019-12-03 19:34:45 · 387 阅读 · 0 评论 -
高并发、分布式限流策略(Springboot实现)
前言在一个高并发系统中对流量的把控是非常重要的,当巨大的流量直接请求到我们的服务器上没多久就可能造成接口不可用,不处理的话甚至会造成整个应用不可用。比如最近就有个这样的需求,我作为客户端要向kafka生产数据,而kafka的消费者则再源源不断的消费数据,并将消费的数据全部请求到web服务器,虽说做了负载(有4台web服务器)但业务数据的量也是巨大的,每秒钟可能有上万条数据产生。如果生产者直接生...原创 2019-11-04 19:23:55 · 1268 阅读 · 0 评论