SpringForAll社区
首页
文档
Spring Boot 3.5.x
Spring Boot 3.4.x
Spring AI 1.0.x
教程
Java 新特性
Spring Boot 1
Spring Boot 2
Spring Cloud
玩转 IntelliJ IDEA
工具
Spring Initializr
文章发布工具
开发者安装大全
关于
登录
菜单
首页
文档
Spring Boot 3.5.x
Spring Boot 3.4.x
Spring AI 1.0.x
教程
Java 新特性
Spring Boot 1
Spring Boot 2
Spring Cloud
玩转 IntelliJ IDEA
工具
Spring Initializr
文章发布工具
开发者安装大全
关于
归档
2024 年 04 月
Java 线程池原理分析
2024-04-24
Java
#java
1.简介 线程池可以简单看做是一组线程的集合,通过使用线程池,我们可以方便的复用线程,避免了频繁创建和销毁线程所带来的开销。在应用上,线程池可应用在后端相关服务中。比如 Web 服务器,数据库服务器等。以 Web 服务器为例,假如 Web 服务器会收到大量短时的 HTTP 请求,如果此时我们简单的为每个 HTTP…
Dubbo 源码分析 – 服务调用过程
2024-04-24
架构运维
1. 简介 在前面的文章中,我们分析了 Dubbo SPI、服务导出与引入、以及集群容错方面的代码。经过前文的铺垫,本篇文章我们终于可以分析服务调用过程了。Dubbo…
AbstractQueuedSynchronizer 原理分析 – 独占/共享模式
2024-04-24
Java
#java
1.简介 AbstractQueuedSynchronizer (抽象队列同步器,以下简称 AQS)出现在 JDK 1.5 中,由大师 Doug Lea 所创作。AQS 是很多同步器的基础框架,比如 ReentrantLock、CountDownLatch 和 Semaphore 等都是基于 AQS 实现的。除此之外,我们还可以基于…
Java CAS 原理分析
2024-04-22
Java
#java
1.简介 CAS 全称是 compare and swap,是一种用于在多线程环境下实现同步功能的机制。CAS 操作包含三个操作数 — 内存位置、预期数值和新值。CAS 的实现逻辑是将内存位置处的数值与预期数值想比较,若相等,则将内存位置处的值替换为新值。若不相等,则不做任何操作。 在 Java 中,Java 并没有直接实现 CAS,CAS…
AbstractQueuedSynchronizer 原理分析 – Condition 实现原理
2024-04-22
Java
#java
1. 简介 Condition 是一个接口,AbstractQueuedSynchronizer 中的 ConditionObject 内部类实现了这个接口。 Condition 声明了一组 等待/通知 的方法,这些方法的功能与 Object 中的 wait/notify/notifyAll 等方法相似。这两者相同的地方在于,它们所提供的 等待/通知…
Java 重入锁 ReentrantLock 原理分析
2024-04-22
Java
#java
Java 重入锁 ReentrantLock 原理分析 1.简介 可重入锁 ReentrantLock 自 JDK 1.5 被引入,功能上与 synchronized 关键字类似。所谓的可重入是指,线程可对同一把锁进行重复加锁,而不会被阻塞住,这样可避免死锁的产生。ReentrantLock 的主要功能和 synchronized…
Java 线程同步组件 CountDownLatch 与 CyclicBarrier 原理分析
2024-04-22
Java
#java
1.简介 在分析完 AbstractQueuedSynchronizer (以下简称 AQS)和 ReentrantLock 的原理后,本文将分析 java.util.concurrent 包下的两个线程同步组件 CountDownLatch 和 CyclicBarrier 。这两个同步组件比较常用,也经常被放在一起对比。通过分析这两个同步组件,可使我们对…
系统设计面试:如何设计一个Twitter或微博
2024-04-19
架构运维
这期视频主要介绍了设计Twitter或类似新闻源系统的功能和非功能需求,以及一些架构概述和讨论点,包括推拉模型和混合模型、服务的无状态性、多数据中心分布、数据库副本和缓存策略、监控使用指标等。 00:00 设计Twitter或任何类型的新闻源系统时,我们需要考虑功能和非功能需求。 功能需求包括发布和检索动态、通知和分析等服务。…
系统设计面试:如何设计一个如微信或WhatsApp这样的消息系统
2024-04-18
架构运维
本视频是关于设计一个消息系统,如WhatsApp或WeChat,涵盖了功能要求和非功能要求,包括一对一聊天和群组聊天、媒体共享、推送通知和在线离线指示等。 视频还介绍了系统架构概述,包括网关、聊天服务、标识服务、服务发现、映射表和在用户状态上的心跳机制。 此外,讨论了其他相关话题,如端到端加密、媒体文件处理和滥用防御。 00:00…
WebSocket的工作原理
2024-04-17
架构运维
…
上一页
1 / 174
2 / 174
3 / 174
4 / 174
5 / 174
6 / 174
7 / 174
8 / 174
9 / 174
10 / 174
11 / 174
12 / 174
13 / 174
14 / 174
15 / 174
16 / 174
17 / 174
18 / 174
19 / 174
20 / 174
21 / 174
22 / 174
23 / 174
24 / 174
25 / 174
26 / 174
27 / 174
28 / 174
29 / 174
30 / 174
31 / 174
32 / 174
33 / 174
34 / 174
35 / 174
36 / 174
37 / 174
38 / 174
39 / 174
40 / 174
41 / 174
42 / 174
43 / 174
44 / 174
45 / 174
46 / 174
47 / 174
48 / 174
49 / 174
50 / 174
51 / 174
52 / 174
53 / 174
54 / 174
55 / 174
56 / 174
57 / 174
58 / 174
59 / 174
60 / 174
61 / 174
62 / 174
63 / 174
64 / 174
65 / 174
66 / 174
67 / 174
68 / 174
69 / 174
70 / 174
71 / 174
72 / 174
73 / 174
74 / 174
75 / 174
76 / 174
77 / 174
78 / 174
79 / 174
80 / 174
81 / 174
82 / 174
83 / 174
84 / 174
85 / 174
86 / 174
87 / 174
88 / 174
89 / 174
90 / 174
91 / 174
92 / 174
93 / 174
94 / 174
95 / 174
96 / 174
97 / 174
98 / 174
99 / 174
100 / 174
101 / 174
102 / 174
103 / 174
104 / 174
105 / 174
106 / 174
107 / 174
108 / 174
109 / 174
110 / 174
111 / 174
112 / 174
113 / 174
114 / 174
115 / 174
116 / 174
117 / 174
118 / 174
119 / 174
120 / 174
121 / 174
122 / 174
123 / 174
124 / 174
125 / 174
126 / 174
127 / 174
128 / 174
129 / 174
130 / 174
131 / 174
132 / 174
133 / 174
134 / 174
135 / 174
136 / 174
137 / 174
138 / 174
139 / 174
140 / 174
141 / 174
142 / 174
143 / 174
144 / 174
145 / 174
146 / 174
147 / 174
148 / 174
149 / 174
150 / 174
151 / 174
152 / 174
153 / 174
154 / 174
155 / 174
156 / 174
157 / 174
158 / 174
159 / 174
160 / 174
161 / 174
162 / 174
163 / 174
164 / 174
165 / 174
166 / 174
167 / 174
168 / 174
169 / 174
170 / 174
171 / 174
172 / 174
173 / 174
174 / 174
下一页