Skip to content

Commit c17a087

Browse files
committed
Reduce image size to speed up loading times
1 parent 9012849 commit c17a087

35 files changed

+14
-14
lines changed

Chapter1.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ The Paxos protocol relies on a majority-based mechanism rooted in set theory to
5252

5353
Raft, another widely used protocol, is essentially a simplified version of the Paxos protocol. The following section describes Meta's implementation of MySQL high availability using the Raft protocol [38], which simplifies traditional high availability processes.
5454

55-
<img src="media/91bc13de07d658b009ae498b5afa4ac1.png" style="zoom: 50%;" />
55+
<img src="media/91bc13de07d658b009ae498b5afa4ac1.gif" style="zoom: 50%;" />
5656

5757
Figure 1-5. Reasons Meta uses raft.
5858

@@ -100,13 +100,13 @@ During TPC-C data loading tests with BenchmarkSQL under normal pressure, the MyS
100100

101101
Here is a partial screenshot of the error log from the MySQL primary:
102102

103-
![](media/4f558a475444869186a0641f934db534.png)
103+
![](media/4f558a475444869186a0641f934db534.gif)
104104

105105
Figure 1-10. A partial screenshot of the error log from the MySQL primary.
106106

107107
Here is a partial screenshot of the error log from the MySQL secondary:
108108

109-
![](media/974f0f1b091afaba18ea375a73d87441.png)
109+
![](media/974f0f1b091afaba18ea375a73d87441.gif)
110110

111111
Figure 1-11. A partial screenshot of the error log from the MySQL secondary.
112112

Chapter10.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ In MySQL asynchronous replication, the secondary has two threads: the IO thread
155155

156156
For example, during Group Replication secondary replay, one of the main bottlenecks captured is the SQL thread, specifically seen in the *rpl_rca_sql-0* thread as shown in the figure below.
157157

158-
![](media/3b54c6545f0c49be73fd3afd9c6ffe79.png)
158+
![](media/3b54c6545f0c49be73fd3afd9c6ffe79.gif)
159159

160160
Figure 10-7. Top two CPU-consuming threads in Group Replication secondary replay.
161161

@@ -312,7 +312,7 @@ If two transactions occurring close together in time modify the same data in MyS
312312

313313
To better understand this problem, consider the following case:
314314

315-
![](media/9aa41ee1e12bb8a72dd240dc42b44ba5.png)
315+
![](media/9aa41ee1e12bb8a72dd240dc42b44ba5.gif)
316316

317317
Figure 10-15. Typical examples of *sequence_number* and *last_committed*.
318318

@@ -352,13 +352,13 @@ The decision to disable NUMA should be made based on a thorough analysis. Testin
352352

353353
Based on MySQL's Performance Schema, statistics on latch operations are gathered. See the results in the following figure:
354354

355-
![](media/08fb8a25d9542121b1e5b5ccb3cbdf6f.png)
355+
![](media/08fb8a25d9542121b1e5b5ccb3cbdf6f.gif)
356356

357357
Figure 10-19. The bottleneck of pending_jobs_lock has been exposed in the Performance Schema.
358358

359359
From the figure, it can be seen that in a NUMA environment, *Relay_log_info::pending_jobs_lock* ranks fifth in importance in relation to replay. Binding the MySQL secondary instance to NUMA node 0, the test evaluates whether the Performance Schema statistics change under an SMP environment. The specific test results are shown in the following figure:
360360

361-
![](media/28708a58742f84033b84ff551cda3b1b.png)
361+
![](media/28708a58742f84033b84ff551cda3b1b.gif)
362362

363363
Figure 10-20. The bottleneck of pending_jobs_lock has been alleviated in an SMP environment.
364364

Chapter3.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ Figure 3-3. Description of the official worklog for redo log optimization.
119119

120120
To address the scalability problems of redo log, developers have subdivided this problem into the following sub-problems:
121121

122-
![](media/5502725fcc5648f2f6d18aaf68832505.png)
122+
![](media/5502725fcc5648f2f6d18aaf68832505.gif)
123123

124124
Figure 3-4. Requirements of the official worklog for redo log optimization.
125125

Chapter4_7.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ To address these problems, additional tools like packet capture can help determi
4545

4646
The following figure depicts the classic TCP state machine used for transitions between TCP states.
4747

48-
![](media/ff831787f6acc1e38a7f70dc47925ee0.png)
48+
![](media/ff831787f6acc1e38a7f70dc47925ee0.gif)
4949

5050
Figure 4-35. Classic TCP state machine overview.
5151

@@ -112,7 +112,7 @@ From the figure, it is evident that the delay between two Paxos instances is aro
112112

113113
In general, the test conclusions of pipelining and batching are consistent with the conclusions in the following paper [48]:
114114

115-
![](media/73dfb3c0a76ecd9d6faa62c025ace5e4.png)
115+
![](media/73dfb3c0a76ecd9d6faa62c025ace5e4.gif)
116116

117117
Figure 4-42. Impact of pipelining and batching on Paxos performance.
118118

@@ -168,7 +168,7 @@ For more advanced features, refer to the *tcpdump* documentation for detailed co
168168

169169
Many software professionals lack in-depth knowledge of TCP/IP logic reasoning, which often leads to misidentifying problems as mysterious problems. Some are discouraged by the complexity of TCP/IP networking literature, while others are misled by confusing details in Wireshark. For instance, a DBA facing performance problems might misinterpret packet capture data in Wireshark, erroneously concluding that TCP retransmissions are the cause.
170170

171-
![](media/3a5d10caf25003e7ea4dcace59a181f6.png)
171+
![](media/3a5d10caf25003e7ea4dcace59a181f6.gif)
172172

173173
Figure 4-45. Packet capture screenshot provided by DBA suspecting retransmission problems.
174174

Chapter7.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ Comparative analysis shows that the CATS algorithm significantly reduces deadloc
309309
310310
The above test results align closely with MySQL's official findings. The following two figures, based on official tests [57], demonstrate the significant effectiveness of the CATS algorithm.
311311
312-
![](media/853d21533f748c1c56a4151869a82a27.png)
312+
![](media/853d21533f748c1c56a4151869a82a27.gif)
313313
314314
Figure 7-13. Comparison of CATS and FIFO in TPS and mean latency: insights from the MySQL blog.
315315

Chapter8.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ From the figure, it can be seen that the number of rows is still large, indicati
6565
6666
Two different debug versions of MySQL were compiled: one with anomalies and one normal. Debug versions were used to capture useful function call relationships through debug traces. When executing the problematic SQL statement on the version with anomalies, the relevant debug trace information is as follows:
6767
68-
![](media/149ca62fd014bd12b60c77573a49757d.png)
68+
![](media/149ca62fd014bd12b60c77573a49757d.gif)
6969
7070
Figure 8-6. Debug trace information for the abnormal version.
7171

Chapter9.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ When there are no theoretical problems with the Mencius algorithm, introducing a
198198

199199
First, let's investigate the performance problems of the MySQL Mencius algorithm implementation. The following figure illustrates the network interaction status when the Mencius algorithm operates stably with a network delay of 10ms:
200200

201-
![](media/77d0c0bdc5ce8574c6ad319864abb032.png)
201+
![](media/77d0c0bdc5ce8574c6ad319864abb032.gif)
202202

203203
Figure 9-6. Insights into the Mencius protocol from packet capture data.
204204

137 KB
Loading
-509 KB
Binary file not shown.
96.4 KB
Loading

0 commit comments

Comments
 (0)