摘要: 什么是分布式事务 分布式事务就是指事务的资源分别位于不同的分布式系统的不同节点之上的事务; 分布式事务产生的原因 2.1、数据库分库分表 在单库单表场景下,当业务数据量达到单库单表的极限时,就需要考虑分库分表,将之前的单库单表拆分成多库多表; 分库分表之后,原来在单个数据库上的事务操作,可能就变成跨 阅读全文
posted @ 2019-10-30 22:31 snail灬 阅读(278) 评论(0) 推荐(0)
摘要: 原文链接:https://blog.csdn.net/weixin_38003389/article/details/89434629 redis 集群做分布式锁,我们使用 Redisson。 | 框架 | 版本 | | | | | Spring Boot | 2.0.3.RELEASE | | S 阅读全文
posted @ 2019-10-30 22:09 snail灬 阅读(555) 评论(0) 推荐(0)
摘要: 什么是分布式锁 在学习Java多线程编程的时候,锁是一个很重要也很基础的概念,锁可以看成是多线程情况下访问共享资源的一种线程同步机制。这是对于单进程应用而言的,即所有线程都在同一个JVM进程里的时候,使用Java语言提供的锁机制可以起到对共享资源进行同步的作用。如果分布式环境下多个不同线程需要对共享 阅读全文
posted @ 2019-10-30 19:56 snail灬 阅读(486) 评论(0) 推荐(1)
摘要: 前言:在java5以后,增加了JUC的并发包且提供了Lock接口用来实现锁的功能。 Lock是一个接口,核心的两个方法lock和unlock,它有很多的实现,比如ReentrantLock、ReentrantReadWriteLock; ReentrantLock 重入锁,表示支持重新进入的锁,也就 阅读全文
posted @ 2019-10-29 22:03 snail灬 阅读(345) 评论(0) 推荐(0)
摘要: Condition是一个多线程协调通信的工具类,可以让某些线程一起等待某个条件(condition),只有满足条件时,线程才会被唤醒。 condition中两个最重要的方法: | 方法 | 作用 | | | | | await | 当前线程阻塞挂起 | | signal | 唤醒阻塞的线程 | aw 阅读全文
posted @ 2019-10-29 21:55 snail灬 阅读(459) 评论(0) 推荐(0)
摘要: 锁 互斥锁的本质是-->共享资源 锁的使用 可以修饰在方法层面和代码块层面 class Test{ synchronized void demo(){ //临界区 } //修饰代码块 Object obj = new Object(); void demo(){ synchronized(obj){ 阅读全文
posted @ 2019-10-29 21:48 snail灬 阅读(266) 评论(0) 推荐(0)
摘要: Java中的线程池是运用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序都可以使用线程池。线程池就像数据库连接池的作用类似,只是线程池是用来重复管理线程避免创建大量线程增加开销。 合理的使用线程池: 降低创建线程和销毁线程的性能开销 合理的设置线程池大小可以避免因为线程数超出硬件资源瓶颈带来 阅读全文
posted @ 2019-10-29 21:24 snail灬 阅读(168) 评论(0) 推荐(0)
摘要: JMM保证原子性、可见性、有序性 原子性 两个高级的字节码指令monitorenter和monitorexit,在java中对应的Synchronized来保证代码块内的操作是原子的 可见性 volatile 写操作的时候会多出一个lock前缀的汇编指令 MESI的缓存一致性协议,来保证多CPU下的 阅读全文
posted @ 2019-10-29 21:22 snail灬 阅读(457) 评论(0) 推荐(0)
摘要: 并发编程基础: 线程状态(NEW、RUNNABLE、BLOCKED、WAITING、TIME_WAITING、TERMINATED) NEW:初始状态,线程被构建,但是还没有调用 start 方法 RUNNABLED:运行状态,JAVA 线程把操作系统中的就绪和运行两种状态统一称为“运行中” BLO 阅读全文
posted @ 2019-10-29 21:17 snail灬 阅读(117) 评论(0) 推荐(0)
摘要: 什么是Dockerfile? Dockerfile是一个包含用于组合映像的命令的文本文档。可以使用在命令行中调用任何命令。 Docker通过读取`Dockerfile`中的指令自动生成映像。 `docker build`命令用于从Dockerfile构建映像。可以在`docker build`命令中 阅读全文
posted @ 2019-10-29 19:31 snail灬 阅读(162) 评论(0) 推荐(0)