top of page

網站架構設計的高可用性原則

  • soworkworkwork
  • Aug 26, 2020
  • 2 min read

在一些交易網站的架構設計中,經常涉及到高併發性和高可用性。以下部分將簡要總結高可用性原則。高可用性原則一般分為以下四點:降級、限流、斷流和回滾。

1退化

交換機的高可用性設計是非常重要的。在設計降級開關時,主要依據如下。

1.1交換機集中管理:通過推送機制將交換機推送到各個應用。

1.2降級多級服務:例如,服務調用降級為只讀本地緩存、只讀分佈式緩存、只讀默認降級數據

1.3交換機前置:如果架構為nginx和tomcat,可以將交換機前置到nginx接入層,交換機在nginx層進行。請求流量不會返回到後端Tomcat應用程序的源,或者只有一小部分流量返回到源。

1.4業務降級:當高併發流量攻擊時,保證用戶能够下單和付款是電子商務系統大促銷設計的覈心要求,並保證數據的最終一致性。

2限流

流量限制的目的是防止惡意請求流量、惡意攻擊或流量超過系統峰值。可以考慮以下想法:

2.1惡意請求流量只訪問緩存

2.2對於穿透後端應用的流量,可以使用nginx的limit模塊進行處理

2.3對於惡意IP,可以使用nginx deny進行遮罩

其原理是將流量滲透限制在後端的弱應用層。

三。切流

對於大型應用來說,减少流量是非常重要的。例如,在多機房環境中,一個機房掛了,機架掛了,服務器掛了。以下方法可用於切換。

3.1dns:切換機房入口。

3.2 httpdns:在主應用場景中,用戶端分配流量入口,繞過運營商的本地DNS,實現更精確的流量調度

3.3 LVS/haproxy:切換故障nginx接入層。

3.4nginx:切換失敗的應用層。

另外,為了方便切換,有些應用還可以在nginx接入層進行切換。一些流量可以通過nginx交換,但不能通過LVS/haproxy。

4它可以回滾

版本控制的目的是實現稽核跟踪和回滾。當出現程式或數據錯誤時,如果有版本控制機制,可以通過回滾恢復到最新的正確版本,如事務回滾、程式碼基回滾、部署版本回滾、數據版本回滾、靜態資源版本回滾,回退機制可以保證系統在一定場景下的高可用性。


 
 
 

Comentários


You Might Also Like:
About Me

I'm a paragraph. Click here to add your own text and edit me. It’s easy. Just click “Edit Text” or double click me to add your own content and make changes to the font.

 

Read More

 

Join my mailing list

Search by Tags

© 2023 by Going Places. Proudly created with Wix.com

bottom of page