摘要: 并发编程从零开始(五)-BlockingQueue 第二部分:JUC 5 并发容器 5.1 BlockingQueue 在所有的并发容器中,BlockingQueue是最常见的一种。BlockingQueue是一个带阻塞功能的队列,当入队列时,若队列已满,则阻塞调用者;当出队列时,若队列为空,则阻塞 阅读全文
posted @ 2021-10-27 14:23 会编程的老六 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 并发编程从零开始(四) 4 JMM内存模型 4.1 JMM与happen-before 4.1.1 为什么会存在内存可见性问题 下图为x86架构下CPU缓存的布局,即在一个CPU 4核下,L1、L2、L3三级缓存与主内存的布局。每个核上面有L1、L2缓存,L3缓存为所有核共用。 因为存在CPU缓存一 阅读全文
posted @ 2021-10-27 09:39 会编程的老六 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 并发编程从零开始(三) 3 并发的问题 3.1 数据竞争 如果有两个或者多个任务在临界段之外对一个共享变量进行写入操作,也就是说没有使用任何同步机制,那么应用程序可能存在数据竞争(也叫做竞争条件)。 在这些情况下,应用程序的最终结果可能取决于任务的执行顺序。 假设有两个不同的任务执行了同一个modi 阅读全文
posted @ 2021-10-26 15:16 会编程的老六 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 并发编程从零开始(二) 2. 并发核心概念 2.1 并发与并行 在单个处理器上采用单核执行多个任务即为并发。在这种情况下,操作系统的任务调度程序会很快从一个任务切换到另一个任务,因此看起来所有的任务都是同时运行的。 同一时间内在不同计算机、处理器或处理器核心上同时运行多个任务,就是所谓的“并行”。 阅读全文
posted @ 2021-10-26 13:41 会编程的老六 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 并发编程从零开始(一) 简介 java是一个支持多线程的开发语言。多线程可以在包含多个CPU核心的机器上同时处理多个不同的任务,优化资源的使用率,提升程序的效率。在一些对性能要求比较高场合,多线程是java程序调优的重要方面。 Java并发编程主要涉及以下几个部分: 并发编程三要素:原子性:即一个不 阅读全文
posted @ 2021-10-25 19:44 会编程的老六 阅读(262) 评论(0) 推荐(0) 编辑
摘要: SpringBoot执行原理-run方法 每个Spring Boot项目都有一个主程序启动类,在主程序启动类中有一个启动项目的main()方法,在该方法中通过执行SpringApplication.run()即可启动整个Spring Boot程序。 问题:那么SpringApplication.ru 阅读全文
posted @ 2021-10-24 13:22 会编程的老六 阅读(1760) 评论(0) 推荐(2) 编辑
摘要: 分布式事务 分布式事务理论CAP(强一致性) CAP 定理,又被叫作布鲁尔定理。对于共享数据系统,最多只能同时拥有CAP其中的两个,任意两个都有其适应的场景。 BASE(最终一致性)BASE 是指基本可用(Basically Available)、软状态( Soft State)、最终一致性( Ev 阅读全文
posted @ 2021-10-23 16:54 会编程的老六 阅读(111) 评论(0) 推荐(0) 编辑
摘要: RocketMQ底层详解 架构 Broker RocketMQ的服务,或者说是一个进程叫做Broker,作用是存储和转发消息。RocketMQ单机大约能承受10万QPS的请求。为了提升Broker的可用性,以及提升服务器性能,通常会做集群的部署。每个Broker保存总数据的一部分,因此可以实现横向扩 阅读全文
posted @ 2021-10-16 23:42 会编程的老六 阅读(698) 评论(0) 推荐(0) 编辑
摘要: Redis复习笔记-分布式篇 Redis主从复制(replication) 配置 配置文件中添加: replicaof [host ip] [port] //添加在每个slave节点中 从节点启动后,会自动连接到master节点,开始同步数据。如果master节点更改了,比如原来的master节点宕 阅读全文
posted @ 2021-10-14 13:21 会编程的老六 阅读(136) 评论(0) 推荐(0) 编辑
摘要: Redis复习笔记-进阶篇 发布订阅模式 订阅频道 消息的生产者和消费者是不同的客户端,在Redis中通过**channel(频道)**模型进行关联。订阅者可以订阅多个channel,消息的发布者可以给指定的channel发布消息,只要有消息到达了channnel,所有订阅了这个channel的订阅 阅读全文
posted @ 2021-10-13 17:49 会编程的老六 阅读(142) 评论(0) 推荐(0) 编辑