java分布式编程&高并发
文章平均质量分 83
解决分布式中遇到的痛点,让分布式玩转手心
有头发的程序猿!
哪有不可逾越的大山,只有想而不敢的苟且。
后续会更新MQ,springCloud,vue,python,人不懒则路不会断,兢兢业业总好过碌碌无为。
展开
-
线程安全性之可见性、缓存一致性(MESI)以及伪共享问题分析
可见性问题可见性是什么:线程A变量对线程B不可见,例如数据库脏读。1.代码示例 static boolean flag = false; static int num = 0; public static void main(String[] args) throws InterruptedException { new Thread(()->{ //里面无触发活性的东西 会导致活性失效 while (!fla原创 2021-12-04 15:00:00 · 519 阅读 · 2 评论 -
并发编程之锁的认识和同步锁 -- synchronized
并发编程之同步锁 – synchronized原创 2021-12-02 11:30:00 · 176 阅读 · 0 评论 -
mybatis第十一话 - mybaits getConnection连接数据库的源码分析
到本篇文章,整个Mybatis框架的分析应该是都完了,但是也在我心中产生了几个想法,为什么看不到连接数据库的源码,连接数据库的流程是怎么样的?为什么项目重启的第一次连接查询会很慢?本文主要探索一下mysql数据库的连接过程!上一篇:mybatis第十话 - mybaits整个事务流程的源码分析下一篇:mysql第一话 - mysql基于docker的安装及使用云想衣裳花想容,春风拂槛露华浓原创 2022-03-19 18:59:59 · 1285 阅读 · 0 评论 -
线程池工作线程ForkJoin的使用
线程池工作线程ForkJoin的使用上一篇:一文带你熟透Java线程池的使用及源码下一篇:2222云想衣裳花想容,春风拂槛露华浓原创 2021-12-12 09:30:00 · 322 阅读 · 0 评论 -
Java中的死锁、活锁以及Java服务器CPU突然飙升问题排查
还在为cpu突然飙升烦恼吗? 如果是的话,好好看看这篇文章吧,兴许能帮到你。1. 死锁死锁一般发生在两个或者多个线程一直在等待另一个线程释放锁或者资源的情形。这种情况可能会导致线程直接挂掉,因为都在等待锁。1.代码示例两个线程在完成指定操作时,都需要获取锁,T1线程是lock1->lock2,T2线程是lock2->lock1。因此两个线程都在以相反的顺序获取锁。 @GetMapping("/deadlock") public void deadlock() {原创 2021-12-01 15:15:00 · 3077 阅读 · 0 评论 -
线程安全性之有序性和内存屏障
线程安全性之有序性和内存屏障原创 2021-12-05 17:00:00 · 196 阅读 · 0 评论 -
Java本地线程变量ThreadLocal的神秘面纱
Java本地线程变量ThreadLocal的神秘面纱以上就是本章的全部内容了。上一篇:J.U.C中的工具类及原理分析(CountDownLatch、Semaphore、CyclicBrrier)下一篇:1222222云想衣裳花想容,春风拂槛露华浓原创 2021-12-10 11:45:00 · 2139 阅读 · 0 评论 -
一文带你熟透Java线程池的使用及源码
一文带你熟透Java线程池的使用及源码在单个线程使用过程中遇到的问题(new Thread().start):线程的频繁创建与销毁线程执行数据多且高频,频繁CPU上下文切换,造成CPU的资源浪费原创 2021-12-11 12:30:00 · 1056 阅读 · 0 评论 -
J.U.C中的工具类及原理分析(CountDownLatch、Semaphore、CyclicBarrier)
J.U.C中的工具类及原理分析(CountDownLatch、Semaphore、CyclicBrrier)以上就是本章的全部内容了。上一篇:线程通信synchronized中的wait/notify、J.U.C Condition的使用和源码分析下一篇:1222222云想衣裳花想容,春风拂槛露华浓...原创 2021-12-09 09:30:00 · 303 阅读 · 0 评论 -
J.U.C中的阻塞队列使用及源码分析--ArrayBlockingQueue
J.U.C中的阻塞队列使用及源码分析–ArrayBlockingQueue以上就是本章的全部内容了。上一篇:线程通信synchronized中的wait/notify、J.U.C Condition的使用和源码分析上一篇:1222222云想衣裳花想容,春风拂槛露华浓...原创 2021-12-08 16:15:00 · 323 阅读 · 0 评论 -
线程通信synchronized中的wait/notify、J.U.C Condition的使用和源码分析
线程通信Synchronized中的wait/notify、J.U.C Condition的使用和源码分析原创 2021-12-07 12:00:00 · 168 阅读 · 0 评论 -
J.U.C ReentrantLock可重入锁使用以及源码分析
Lock J.U.C java.util.concurrent可重入锁使用以及源码分析原创 2021-12-06 12:45:00 · 242 阅读 · 0 评论 -
SpringBoot Tair 实现数据缓存
Tair详细描述:Tair是一个Key/Value结构数据的解决方案,它默认支持基于内存和文件的两种存储方式,分别与缓存和持久化存储对应。Tari的功能是get、put、delete以及批量接口。Tair中的每个数据都包含版本号,版本号在每次更新后都会递增。这个特性有助于防止由于数据的并发更新导致的问题。直接看代码:pom.xml <!--tair缓存 会自带一个mina-co...原创 2018-10-13 17:30:19 · 1182 阅读 · 0 评论 -
SpringBoot Dubbo Zookeeper 实现远程调用
首先我们来了解dubbo+zookeeper是个什么东西吧?Dubbo是 阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步...原创 2018-10-13 17:10:52 · 707 阅读 · 0 评论