理解 Jdk volatile应用和实现原理

Java 多线程并发编程中,常用到两个关键字:synchronizedvolatile,synchronized 是重量级锁,而 volatile 可以理解为轻量级的 synchronized ,但并不保证线程安全。

volatile 在并发环境中保证了共享变量的 可见性,即当一个线程修改一个共享变量时,另一个线程能读到这个修改的值。volatile 变量修饰符使用适当的话,相对于 synchronized 的使用和执行成本更低,因为它不会引起线程上下文的切换和调度。

阅读更多

高并发之接口限流与实现

开发互联网系统及架构在满足测算出的并发请求时,还要预防并发可能突破设计峰值的情况,必要时可以优先处理高优先级数据或特殊特征的数据,也要确保系统可用不崩溃。

开发高并发系统时有三把利器用来保护系统:缓存降级限流。本文介结限流相关概念和实现方式。

阅读更多