|
Before Width: | Height: | Size: 105 KiB After Width: | Height: | Size: 104 KiB |
|
Before Width: | Height: | Size: 85 KiB After Width: | Height: | Size: 89 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 104 KiB |
|
Before Width: | Height: | Size: 99 KiB After Width: | Height: | Size: 99 KiB |
|
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 121 KiB |
|
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 109 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 154 KiB After Width: | Height: | Size: 163 KiB |
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 104 KiB |
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
@@ -15,7 +15,7 @@
|
||||
.dash { stroke-dasharray: 5 4; }
|
||||
.line { stroke: #666; stroke-width: 1.3; fill: none; }
|
||||
.frame { fill: none; stroke: #999; stroke-width: 1; stroke-dasharray: 4 3; }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||||
@@ -79,10 +79,10 @@
|
||||
<rect x="534" y="135" width="32" height="30" fill="#FFFFFF" stroke="#999"/>
|
||||
<text x="550" y="155" class="c b">0</text>
|
||||
<text x="550" y="181" class="c sub">15</text>
|
||||
<rect x="123" y="53" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="122" y="52" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="120" y="50" width="80" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="160" y="69.5" class="b c">key1</text>
|
||||
<rect x="423" y="53" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="422" y="52" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="420" y="50" width="80" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="460" y="69.5" class="b c">key2</text>
|
||||
<line x1="160" y1="83" x2="102" y2="132" class="arrow "/>
|
||||
@@ -92,10 +92,10 @@
|
||||
<line x1="460" y1="83" x2="390" y2="132" class="arrow "/>
|
||||
<line x1="460" y1="83" x2="486" y2="132" class="arrow "/>
|
||||
<text x="30" y="70" class="b">插入</text>
|
||||
<rect x="93" y="243" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="92" y="242" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="90" y="240" width="80" height="30" rx="6" fill="#E6E6E6"/>
|
||||
<text x="130" y="259.5" class="b c">key3</text>
|
||||
<rect x="383" y="243" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="382" y="242" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="380" y="240" width="80" height="30" rx="6" fill="#E6E6E6"/>
|
||||
<text x="420" y="259.5" class="b c">key4</text>
|
||||
<line x1="130" y1="237" x2="102" y2="168" class="arrow "/>
|
||||
|
||||
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
@@ -10,7 +10,7 @@
|
||||
.arrow { stroke: #666; stroke-width: 1.3; fill: none; marker-end: url(#a); }
|
||||
.reply { stroke-dasharray: 5 4; }
|
||||
.lost { stroke: #C0605A; marker-end: url(#x); }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto">
|
||||
@@ -26,16 +26,16 @@
|
||||
<line x1="195" y1="76" x2="195" y2="302" class="life"/>
|
||||
<line x1="325" y1="76" x2="325" y2="302" class="life"/>
|
||||
<line x1="455" y1="76" x2="455" y2="302" class="life"/>
|
||||
<rect x="32" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="31" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="29" y="45" width="72" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="65" y="64.5" class="head">写请求</text>
|
||||
<rect x="162" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="161" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="159" y="45" width="72" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="195" y="64.5" class="head">缓存</text>
|
||||
<rect x="292" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="291" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="289" y="45" width="72" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="325" y="64.5" class="head">数据库</text>
|
||||
<rect x="422" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="421" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="419" y="45" width="72" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="455" y="64.5" class="head">读请求</text>
|
||||
<line x1="69" y1="100" x2="191" y2="100" class="arrow"/>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
@@ -5,7 +5,7 @@
|
||||
.state { font-weight: bold; font-size: 14px; text-anchor: middle; }
|
||||
.en { font-size: 10px; fill: #888; text-anchor: middle; }
|
||||
.arrow { stroke: #666; stroke-width: 1.3; fill: none; marker-end: url(#a); }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto">
|
||||
@@ -16,19 +16,19 @@
|
||||
<text x="260" y="28" class="title">熔断器状态</text>
|
||||
|
||||
<!-- 关闭:正常调用 -->
|
||||
<rect x="58" y="81" width="110" height="44" rx="6" class="shadow"/>
|
||||
<rect x="57" y="80" width="110" height="44" rx="6" class="shadow"/>
|
||||
<rect x="55" y="78" width="110" height="44" rx="6" fill="#B0E3E6"/>
|
||||
<text x="110" y="98" class="state">关闭</text>
|
||||
<text x="110" y="114" class="en">Closed,正常调用</text>
|
||||
|
||||
<!-- 打开:直接返回默认结果 -->
|
||||
<rect x="358" y="81" width="110" height="44" rx="6" class="shadow"/>
|
||||
<rect x="357" y="80" width="110" height="44" rx="6" class="shadow"/>
|
||||
<rect x="355" y="78" width="110" height="44" rx="6" fill="#F3C6C2"/>
|
||||
<text x="410" y="98" class="state">打开</text>
|
||||
<text x="410" y="114" class="en">Open,直接返回</text>
|
||||
|
||||
<!-- 半开:放行少量试探请求 -->
|
||||
<rect x="208" y="193" width="110" height="44" rx="6" class="shadow"/>
|
||||
<rect x="207" y="192" width="110" height="44" rx="6" class="shadow"/>
|
||||
<rect x="205" y="190" width="110" height="44" rx="6" fill="#B1DDF0"/>
|
||||
<text x="260" y="210" class="state">半开</text>
|
||||
<text x="260" y="226" class="en">Half-Open,少量试探</text>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
@@ -15,7 +15,7 @@
|
||||
.dash { stroke-dasharray: 5 4; }
|
||||
.line { stroke: #666; stroke-width: 1.3; fill: none; }
|
||||
.frame { fill: none; stroke: #999; stroke-width: 1; stroke-dasharray: 4 3; }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||||
@@ -33,21 +33,21 @@
|
||||
<text x="310" y="28" class="title">消费者组</text>
|
||||
<rect x="235" y="58" width="150" height="210" rx="8" class="frame"/>
|
||||
<text x="245" y="76" class="b">Topic</text>
|
||||
<rect x="258" y="95" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="257" y="94" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="255" y="92" width="110" height="36" rx="6" fill="#B1DDF0"/>
|
||||
<text x="310" y="114.5" class="b c">分区 0</text>
|
||||
<rect x="258" y="150" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="257" y="149" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="255" y="147" width="110" height="36" rx="6" fill="#B1DDF0"/>
|
||||
<text x="310" y="169.5" class="b c">分区 1</text>
|
||||
<rect x="258" y="205" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="257" y="204" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="255" y="202" width="110" height="36" rx="6" fill="#B1DDF0"/>
|
||||
<text x="310" y="224.5" class="b c">分区 2</text>
|
||||
<rect x="20" y="58" width="160" height="210" rx="8" class="frame"/>
|
||||
<text x="30" y="76" class="b">消费者组 A</text>
|
||||
<rect x="43" y="110" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="42" y="109" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="40" y="107" width="110" height="36" rx="6" fill="#B0E3E6"/>
|
||||
<text x="95" y="129.5" class="b c">A1</text>
|
||||
<rect x="43" y="190" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="42" y="189" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="40" y="187" width="110" height="36" rx="6" fill="#B0E3E6"/>
|
||||
<text x="95" y="209.5" class="b c">A2</text>
|
||||
<line x1="253" y1="110" x2="155" y2="120" class="arrow "/>
|
||||
@@ -55,16 +55,16 @@
|
||||
<line x1="253" y1="220" x2="155" y2="205" class="arrow "/>
|
||||
<rect x="440" y="50" width="160" height="262" rx="8" class="frame"/>
|
||||
<text x="450" y="68" class="b">消费者组 B</text>
|
||||
<rect x="468" y="80" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="467" y="79" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="465" y="77" width="110" height="36" rx="6" fill="#B0E3E6"/>
|
||||
<text x="520" y="99.5" class="b c">B1</text>
|
||||
<rect x="468" y="135" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="467" y="134" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="465" y="132" width="110" height="36" rx="6" fill="#B0E3E6"/>
|
||||
<text x="520" y="154.5" class="b c">B2</text>
|
||||
<rect x="468" y="190" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="467" y="189" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="465" y="187" width="110" height="36" rx="6" fill="#B0E3E6"/>
|
||||
<text x="520" y="209.5" class="b c">B3</text>
|
||||
<rect x="468" y="245" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="467" y="244" width="110" height="36" rx="6" class="shadow"/>
|
||||
<rect x="465" y="242" width="110" height="36" rx="6" fill="#E6E6E6"/>
|
||||
<text x="520" y="258" class="b c">B4</text>
|
||||
<text x="520" y="273" class="sub c">空闲</text>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.3 KiB |
@@ -10,7 +10,7 @@
|
||||
.arrow { stroke: #666; stroke-width: 1.3; fill: none; marker-end: url(#a); }
|
||||
.reply { stroke-dasharray: 5 4; }
|
||||
.lost { stroke: #C0605A; marker-end: url(#x); }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto">
|
||||
@@ -25,13 +25,13 @@
|
||||
<line x1="90" y1="76" x2="90" y2="322" class="life"/>
|
||||
<line x1="300" y1="76" x2="300" y2="322" class="life"/>
|
||||
<line x1="510" y1="76" x2="510" y2="322" class="life"/>
|
||||
<rect x="46" y="48" width="94" height="30" rx="6" class="shadow"/>
|
||||
<rect x="45" y="47" width="94" height="30" rx="6" class="shadow"/>
|
||||
<rect x="43" y="45" width="94" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="90" y="64.5" class="head">用户浏览器</text>
|
||||
<rect x="263" y="48" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="262" y="47" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="260" y="45" width="80" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="300" y="64.5" class="head">银行网站</text>
|
||||
<rect x="473" y="48" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="472" y="47" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="470" y="45" width="80" height="30" rx="6" fill="#F3C6C2"/>
|
||||
<text x="510" y="64.5" class="head">恶意网站</text>
|
||||
<line x1="94" y1="100" x2="296" y2="100" class="arrow"/>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
@@ -15,7 +15,7 @@
|
||||
.dash { stroke-dasharray: 5 4; }
|
||||
.line { stroke: #666; stroke-width: 1.3; fill: none; }
|
||||
.frame { fill: none; stroke: #999; stroke-width: 1; stroke-dasharray: 4 3; }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||||
@@ -33,7 +33,7 @@
|
||||
<text x="320" y="28" class="title">select / poll 与 epoll</text>
|
||||
<rect x="20" y="50" width="290" height="265" rx="8" class="frame"/>
|
||||
<text x="30" y="68" class="b">select / poll</text>
|
||||
<rect x="98" y="83" width="140" height="34" rx="6" class="shadow"/>
|
||||
<rect x="97" y="82" width="140" height="34" rx="6" class="shadow"/>
|
||||
<rect x="95" y="80" width="140" height="34" rx="6" fill="#B0E3E6"/>
|
||||
<text x="165" y="101.5" class="b c">用户进程</text>
|
||||
<line x1="30" y1="150" x2="300" y2="150" class="line dash"/>
|
||||
@@ -41,7 +41,7 @@
|
||||
<text x="300" y="163" class="sub e">内核态</text>
|
||||
<rect x="330" y="50" width="290" height="265" rx="8" class="frame"/>
|
||||
<text x="340" y="68" class="b">epoll</text>
|
||||
<rect x="408" y="83" width="140" height="34" rx="6" class="shadow"/>
|
||||
<rect x="407" y="82" width="140" height="34" rx="6" class="shadow"/>
|
||||
<rect x="405" y="80" width="140" height="34" rx="6" fill="#B0E3E6"/>
|
||||
<text x="475" y="101.5" class="b c">用户进程</text>
|
||||
<line x1="340" y1="150" x2="610" y2="150" class="line dash"/>
|
||||
@@ -50,7 +50,7 @@
|
||||
<line x1="110" y1="117" x2="110" y2="200" class="arrow "/>
|
||||
<text x="104" y="180" class="e sub">每次调用复制</text>
|
||||
<text x="104" y="194" class="e sub">全部描述符</text>
|
||||
<rect x="73" y="206" width="160" height="40" rx="6" class="shadow"/>
|
||||
<rect x="72" y="205" width="160" height="40" rx="6" class="shadow"/>
|
||||
<rect x="70" y="203" width="160" height="40" rx="6" fill="#B1DDF0"/>
|
||||
<text x="150" y="221" class="b c">遍历全部描述符</text>
|
||||
<text x="150" y="236" class="sub c">检查是否就绪</text>
|
||||
@@ -73,10 +73,10 @@
|
||||
<circle cx="385" cy="275" r="9" fill="#61646B"/>
|
||||
<circle cx="415" cy="275" r="9" fill="#C0605A"/>
|
||||
<text x="400" y="300" class="c sub">红黑树:已注册描述符</text>
|
||||
<rect x="535" y="210" width="50" height="20" rx="3" fill="#F3D9A4"/>
|
||||
<rect x="535" y="238" width="50" height="20" rx="3" fill="#F3D9A4"/>
|
||||
<rect x="535" y="210" width="50" height="20" rx="3" fill="#DDD7F6"/>
|
||||
<rect x="535" y="238" width="50" height="20" rx="3" fill="#DDD7F6"/>
|
||||
<line x1="560" y1="230" x2="560" y2="237" class="arrow "/>
|
||||
<rect x="535" y="266" width="50" height="20" rx="3" fill="#F3D9A4"/>
|
||||
<rect x="535" y="266" width="50" height="20" rx="3" fill="#DDD7F6"/>
|
||||
<line x1="560" y1="258" x2="560" y2="265" class="arrow "/>
|
||||
<text x="560" y="297" class="c sub">就绪链表</text>
|
||||
<path d="M430,245 C470,245 490,220 532,220" class="arrow dash"/>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB |
@@ -10,7 +10,7 @@
|
||||
.arrow { stroke: #666; stroke-width: 1.3; fill: none; marker-end: url(#a); }
|
||||
.reply { stroke-dasharray: 5 4; }
|
||||
.lost { stroke: #C0605A; marker-end: url(#x); }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto">
|
||||
@@ -26,23 +26,23 @@
|
||||
<line x1="230" y1="76" x2="230" y2="428" class="life"/>
|
||||
<line x1="370" y1="76" x2="370" y2="428" class="life"/>
|
||||
<line x1="510" y1="76" x2="510" y2="428" class="life"/>
|
||||
<rect x="52" y="48" width="82" height="30" rx="6" class="shadow"/>
|
||||
<rect x="51" y="47" width="82" height="30" rx="6" class="shadow"/>
|
||||
<rect x="49" y="45" width="82" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="90" y="64.5" class="head">客户端 1</text>
|
||||
<rect x="197" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="196" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="194" y="45" width="72" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="230" y="64.5" class="head">锁服务</text>
|
||||
<rect x="332" y="48" width="82" height="30" rx="6" class="shadow"/>
|
||||
<rect x="331" y="47" width="82" height="30" rx="6" class="shadow"/>
|
||||
<rect x="329" y="45" width="82" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="370" y="64.5" class="head">客户端 2</text>
|
||||
<rect x="477" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="476" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="474" y="45" width="72" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="510" y="64.5" class="head">存储</text>
|
||||
<line x1="94" y1="100" x2="226" y2="100" class="arrow"/>
|
||||
<text x="160" y="94" class="msg">获取锁</text>
|
||||
<line x1="226" y1="134" x2="94" y2="134" class="arrow reply"/>
|
||||
<text x="160" y="128" class="msg">成功,令牌 33</text>
|
||||
<rect x="85" y="158" width="10" height="150" fill="#F3D9A4" stroke="#D9B44A"/>
|
||||
<rect x="85" y="158" width="10" height="150" fill="#DDD7F6" stroke="#9188D8"/>
|
||||
<text x="102" y="237" class="note"></text>
|
||||
<text x="78" y="172" class="note" text-anchor="end">GC 停顿</text>
|
||||
<text x="240" y="206" class="note" text-anchor="start">锁过期</text>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
@@ -15,7 +15,7 @@
|
||||
.dash { stroke-dasharray: 5 4; }
|
||||
.line { stroke: #666; stroke-width: 1.3; fill: none; }
|
||||
.frame { fill: none; stroke: #999; stroke-width: 1; stroke-dasharray: 4 3; }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||||
|
||||
|
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 6.3 KiB |
@@ -15,7 +15,7 @@
|
||||
.dash { stroke-dasharray: 5 4; }
|
||||
.line { stroke: #666; stroke-width: 1.3; fill: none; }
|
||||
.frame { fill: none; stroke: #999; stroke-width: 1; stroke-dasharray: 4 3; }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||||
@@ -31,19 +31,19 @@
|
||||
<rect width="100%" height="100%" fill="#FFFFFF"/>
|
||||
|
||||
<text x="310" y="28" class="title">LRU:HashMap + 双向链表</text>
|
||||
<rect x="33" y="160" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="32" y="159" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="30" y="157" width="80" height="36" rx="6" fill="#E6E6E6"/>
|
||||
<text x="70" y="179.5" class="c b mono">head</text>
|
||||
<rect x="153" y="160" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="152" y="159" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="150" y="157" width="80" height="36" rx="6" fill="#B1DDF0"/>
|
||||
<text x="190" y="179.5" class="c b mono">k2</text>
|
||||
<rect x="273" y="160" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="272" y="159" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="270" y="157" width="80" height="36" rx="6" fill="#B1DDF0"/>
|
||||
<text x="310" y="179.5" class="c b mono">k3</text>
|
||||
<rect x="393" y="160" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="392" y="159" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="390" y="157" width="80" height="36" rx="6" fill="#B1DDF0"/>
|
||||
<text x="430" y="179.5" class="c b mono">k1</text>
|
||||
<rect x="513" y="160" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="512" y="159" width="80" height="36" rx="6" class="shadow"/>
|
||||
<rect x="510" y="157" width="80" height="36" rx="6" fill="#E6E6E6"/>
|
||||
<text x="550" y="179.5" class="c b mono">tail</text>
|
||||
<line x1="112" y1="169" x2="148" y2="169" class="arrow "/>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.1 KiB |
@@ -15,7 +15,7 @@
|
||||
.dash { stroke-dasharray: 5 4; }
|
||||
.line { stroke: #666; stroke-width: 1.3; fill: none; }
|
||||
.frame { fill: none; stroke: #999; stroke-width: 1; stroke-dasharray: 4 3; }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||||
|
||||
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
@@ -10,7 +10,7 @@
|
||||
.arrow { stroke: #666; stroke-width: 1.3; fill: none; marker-end: url(#a); }
|
||||
.reply { stroke-dasharray: 5 4; }
|
||||
.lost { stroke: #C0605A; marker-end: url(#x); }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto">
|
||||
@@ -27,19 +27,19 @@
|
||||
<line x1="320" y1="76" x2="320" y2="572" class="life"/>
|
||||
<line x1="448" y1="76" x2="448" y2="572" class="life"/>
|
||||
<line x1="576" y1="76" x2="576" y2="572" class="life"/>
|
||||
<rect x="15" y="48" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="14" y="47" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="12" y="45" width="104" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="64" y="64.5" class="head">Proposer A</text>
|
||||
<rect x="143" y="48" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="142" y="47" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="140" y="45" width="104" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="192" y="64.5" class="head">Acceptor X</text>
|
||||
<rect x="271" y="48" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="270" y="47" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="268" y="45" width="104" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="320" y="64.5" class="head">Acceptor Y</text>
|
||||
<rect x="399" y="48" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="398" y="47" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="396" y="45" width="104" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="448" y="64.5" class="head">Acceptor Z</text>
|
||||
<rect x="527" y="48" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="526" y="47" width="104" height="30" rx="6" class="shadow"/>
|
||||
<rect x="524" y="45" width="104" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="576" y="64.5" class="head">Proposer B</text>
|
||||
<line x1="68" y1="100" x2="188" y2="100" class="arrow"/>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.3 KiB |
@@ -15,7 +15,7 @@
|
||||
.dash { stroke-dasharray: 5 4; }
|
||||
.line { stroke: #666; stroke-width: 1.3; fill: none; }
|
||||
.frame { fill: none; stroke: #999; stroke-width: 1; stroke-dasharray: 4 3; }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||||
@@ -53,13 +53,13 @@
|
||||
<line x1="430" y1="80" x2="430" y2="108" class="arrow "/>
|
||||
<text x="440" y="92" class="sub">固定速率放入令牌</text>
|
||||
<path d="M380,110 L392,210 L478,210 L490,110" class="line"/>
|
||||
<circle cx="410" cy="195" r="9" fill="#F3D9A4" stroke="#D9B44A"/>
|
||||
<circle cx="435" cy="195" r="9" fill="#F3D9A4" stroke="#D9B44A"/>
|
||||
<circle cx="460" cy="195" r="9" fill="#F3D9A4" stroke="#D9B44A"/>
|
||||
<circle cx="422" cy="175" r="9" fill="#F3D9A4" stroke="#D9B44A"/>
|
||||
<circle cx="448" cy="175" r="9" fill="#F3D9A4" stroke="#D9B44A"/>
|
||||
<circle cx="410" cy="195" r="9" fill="#DDD7F6" stroke="#9188D8"/>
|
||||
<circle cx="435" cy="195" r="9" fill="#DDD7F6" stroke="#9188D8"/>
|
||||
<circle cx="460" cy="195" r="9" fill="#DDD7F6" stroke="#9188D8"/>
|
||||
<circle cx="422" cy="175" r="9" fill="#DDD7F6" stroke="#9188D8"/>
|
||||
<circle cx="448" cy="175" r="9" fill="#DDD7F6" stroke="#9188D8"/>
|
||||
<text x="435" y="140" class="c sub">桶满后不再放入</text>
|
||||
<rect x="513" y="143" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="512" y="142" width="80" height="30" rx="6" class="shadow"/>
|
||||
<rect x="510" y="140" width="80" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="550" y="159.5" class="b c">请求</text>
|
||||
<line x1="507" y1="165" x2="470" y2="190" class="arrow "/>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 4.0 KiB |
@@ -10,7 +10,7 @@
|
||||
.arrow { stroke: #666; stroke-width: 1.3; fill: none; marker-end: url(#a); }
|
||||
.reply { stroke-dasharray: 5 4; }
|
||||
.lost { stroke: #C0605A; marker-end: url(#x); }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto">
|
||||
@@ -25,13 +25,13 @@
|
||||
<line x1="100" y1="76" x2="100" y2="388" class="life"/>
|
||||
<line x1="300" y1="76" x2="300" y2="388" class="life"/>
|
||||
<line x1="500" y1="76" x2="500" y2="388" class="life"/>
|
||||
<rect x="67" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="66" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="64" y="45" width="72" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="100" y="64.5" class="head">生产者</text>
|
||||
<rect x="267" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="266" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="264" y="45" width="72" height="30" rx="6" fill="#B1DDF0"/>
|
||||
<text x="300" y="64.5" class="head">Broker</text>
|
||||
<rect x="467" y="48" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="466" y="47" width="72" height="30" rx="6" class="shadow"/>
|
||||
<rect x="464" y="45" width="72" height="30" rx="6" fill="#B0E3E6"/>
|
||||
<text x="500" y="64.5" class="head">消费者</text>
|
||||
<line x1="104" y1="100" x2="296" y2="100" class="arrow"/>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
@@ -15,7 +15,7 @@
|
||||
.dash { stroke-dasharray: 5 4; }
|
||||
.line { stroke: #666; stroke-width: 1.3; fill: none; }
|
||||
.frame { fill: none; stroke: #999; stroke-width: 1; stroke-dasharray: 4 3; }
|
||||
.shadow { fill: #C0C0C0; }
|
||||
.shadow { fill: #DADADA; }
|
||||
</style>
|
||||
<defs>
|
||||
<marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||||
@@ -31,25 +31,25 @@
|
||||
<rect width="100%" height="100%" fill="#FFFFFF"/>
|
||||
|
||||
<text x="300" y="28" class="title">Saga</text>
|
||||
<rect x="73" y="63" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="72" y="62" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="70" y="60" width="110" height="40" rx="6" fill="#B1DDF0"/>
|
||||
<text x="125" y="78" class="b c">T1</text>
|
||||
<text x="125" y="93" class="sub c">本地事务提交</text>
|
||||
<rect x="233" y="63" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="232" y="62" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="230" y="60" width="110" height="40" rx="6" fill="#B1DDF0"/>
|
||||
<text x="285" y="78" class="b c">T2</text>
|
||||
<text x="285" y="93" class="sub c">本地事务提交</text>
|
||||
<rect x="393" y="63" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="392" y="62" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="390" y="60" width="110" height="40" rx="6" fill="#F3C6C2"/>
|
||||
<text x="445" y="78" class="b c">T3</text>
|
||||
<text x="445" y="93" class="sub c">失败</text>
|
||||
<line x1="183" y1="80" x2="227" y2="80" class="arrow "/>
|
||||
<line x1="343" y1="80" x2="387" y2="80" class="arrow "/>
|
||||
<rect x="73" y="153" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="72" y="152" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="70" y="150" width="110" height="40" rx="6" fill="#B0E3E6"/>
|
||||
<text x="125" y="168" class="b c">C1</text>
|
||||
<text x="125" y="183" class="sub c">补偿 T1</text>
|
||||
<rect x="233" y="153" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="232" y="152" width="110" height="40" rx="6" class="shadow"/>
|
||||
<rect x="230" y="150" width="110" height="40" rx="6" fill="#B0E3E6"/>
|
||||
<text x="285" y="168" class="b c">C2</text>
|
||||
<text x="285" y="183" class="sub c">补偿 T2</text>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |