auto commit
This commit is contained in:
parent
05708b152b
commit
f5aaa576e4
|
@ -33,11 +33,11 @@
|
|||
|
||||
下图中,一共有 6 个客户端产生了 6 个请求,这 6 个请求按 (1, 2, 3, 4, 5, 6) 的顺序发送。(1, 3, 5) 的请求会被发送到服务器 1,(2, 4, 6) 的请求会被发送到服务器 2。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/b02fcffd-ed09-4ef9-bc5f-8f0e0383eb1a.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/b02fcffd-ed09-4ef9-bc5f-8f0e0383eb1a.jpg" width="500px"/> </div><br>
|
||||
|
||||
该算法比较适合每个服务器的性能差不多的场景,如果有性能存在差异的情况下,那么性能较差的服务器可能无法承担过大的负载(下图的 Server 2)。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/73c72e75-193c-4092-aa43-b9c6703c4a22.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/73c72e75-193c-4092-aa43-b9c6703c4a22.jpg" width="500px"/> </div><br>
|
||||
|
||||
### 2. 加权轮询(Weighted Round Robbin)
|
||||
|
||||
|
@ -45,7 +45,7 @@
|
|||
|
||||
例如下图中,服务器 1 被赋予的权值为 5,服务器 2 被赋予的权值为 1,那么 (1, 2, 3, 4, 5) 请求会被发送到服务器 1,(6) 请求会被发送到服务器 2。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/92691356-4f7a-46ec-9921-13055d3dcb12.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/92691356-4f7a-46ec-9921-13055d3dcb12.jpg" width="500px"/> </div><br>
|
||||
|
||||
### 3. 最少连接(least Connections)
|
||||
|
||||
|
@ -53,13 +53,13 @@
|
|||
|
||||
例如下图中,(1, 3, 5) 请求会被发送到服务器 1,但是 (1, 3) 很快就断开连接,此时只有 (5) 请求连接服务器 1;(2, 4, 6) 请求被发送到服务器 2,只有 (2) 的连接断开,此时 (6, 4) 请求连接服务器 2。该系统继续运行时,服务器 2 会承担过大的负载。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/8089a19a-6239-47a0-bf69-54203117d4dc.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/8089a19a-6239-47a0-bf69-54203117d4dc.jpg" width="500px"/> </div><br>
|
||||
|
||||
最少连接算法就是将请求发送给当前最少连接数的服务器上。
|
||||
|
||||
例如下图中,服务器 1 当前连接数最小,那么新到来的请求 6 就会被发送到服务器 1 上。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/181edd46-e640-472a-9119-a697de0d2a82.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/181edd46-e640-472a-9119-a697de0d2a82.jpg" width="500px"/> </div><br>
|
||||
|
||||
### 4. 加权最少连接(Weighted Least Connection)
|
||||
|
||||
|
@ -71,7 +71,7 @@
|
|||
|
||||
和轮询算法类似,该算法比较适合服务器性能差不多的场景。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/67173c9f-ac87-496a-bd0a-0b1a5cfa735a.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/67173c9f-ac87-496a-bd0a-0b1a5cfa735a.jpg" width="500px"/> </div><br>
|
||||
|
||||
### 6. 源地址哈希法 (IP Hash)
|
||||
|
||||
|
@ -79,7 +79,7 @@
|
|||
|
||||
可以保证同一 IP 的客户端的请求会转发到同一台服务器上,用来实现会话粘滞(Sticky Session)
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/9d3c6bfb-4c4c-4b77-9410-56b3f82106d1.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/9d3c6bfb-4c4c-4b77-9410-56b3f82106d1.jpg" width="500px"/> </div><br>
|
||||
|
||||
## 转发实现
|
||||
|
||||
|
@ -94,7 +94,7 @@ HTTP 重定向负载均衡服务器使用某种负载均衡算法计算得到服
|
|||
|
||||
该负载均衡转发的缺点比较明显,实际场景中很少使用它。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/131550414680831.gif"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/c2eae474-b43f-41ba-a3d1-b8a6a7373e54_200.png" width="500px"/> </div><br>
|
||||
|
||||
### 2. DNS 域名解析
|
||||
|
||||
|
@ -110,7 +110,7 @@ HTTP 重定向负载均衡服务器使用某种负载均衡算法计算得到服
|
|||
|
||||
大型网站基本使用了 DNS 做为第一级负载均衡手段,然后在内部使用其它方式做第二级负载均衡。也就是说,域名解析的结果为内部的负载均衡服务器 IP 地址。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/141550414746389.gif"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/5effb189-d618-418b-bdda-06e6f6080c15_200.png" width="500px"/> </div><br>
|
||||
|
||||
### 3. 反向代理服务器
|
||||
|
||||
|
@ -167,7 +167,7 @@ HTTP 重定向负载均衡服务器使用某种负载均衡算法计算得到服
|
|||
|
||||
- 当服务器宕机时,将丢失该服务器上的所有 Session。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/6aee49d3-f6c6-4d14-a81a-080c290de875.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/6aee49d3-f6c6-4d14-a81a-080c290de875.jpg" width="400px"/> </div><br>
|
||||
|
||||
## Session Replication
|
||||
|
||||
|
@ -178,7 +178,7 @@ HTTP 重定向负载均衡服务器使用某种负载均衡算法计算得到服
|
|||
- 占用过多内存;
|
||||
- 同步过程占用网络带宽以及服务器处理器时间。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/7f403a7a-5228-42c0-af1c-b21635c77016.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/7f403a7a-5228-42c0-af1c-b21635c77016.jpg" width="400px"/> </div><br>
|
||||
|
||||
## Session Server
|
||||
|
||||
|
@ -192,7 +192,7 @@ HTTP 重定向负载均衡服务器使用某种负载均衡算法计算得到服
|
|||
|
||||
- 需要去实现存取 Session 的代码。
|
||||
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/27fce0c6-8262-4d11-abb4-243faa2a2eef.jpg"/> </div><br>
|
||||
<div align="center"> <img src="https://gitee.com/CyC2018/CS-Notes/raw/master/docs/pics/8a182663-af78-4618-b893-96c63324a250_200.png" width="600px"/> </div><br>
|
||||
|
||||
参考:
|
||||
|
||||
|
|
BIN
docs/pics/5effb189-d618-418b-bdda-06e6f6080c15_200.png
Normal file
BIN
docs/pics/5effb189-d618-418b-bdda-06e6f6080c15_200.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 95 KiB |
BIN
docs/pics/8a182663-af78-4618-b893-96c63324a250_200.png
Normal file
BIN
docs/pics/8a182663-af78-4618-b893-96c63324a250_200.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 144 KiB |
BIN
docs/pics/c2eae474-b43f-41ba-a3d1-b8a6a7373e54_200.png
Normal file
BIN
docs/pics/c2eae474-b43f-41ba-a3d1-b8a6a7373e54_200.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 83 KiB |
Loading…
Reference in New Issue
Block a user