反向代理之負載均衡

来源:https://www.cnblogs.com/itbsl/archive/2020/07/07/13261486.html
-Advertisement-
Play Games

負載均衡: 一聽這詞很多小伙伴嚇壞了,前人就喜歡搞一些看起來很高大上的詞,好讓後生望而敬畏.那我們一起來捋一捋. 負載就是負擔. 均衡就是平均分.這樣 一說就是負擔平均分. 伺服器也要減減壓 我們都知道伺服器是第三產業,服務行業,客戶來了,你不能不服務.客戶少還行,客戶多了一臺伺服器就頂不住了,怎麼 ...


負載均衡:
一聽這詞很多小伙伴嚇壞了,前人就喜歡搞一些看起來很高大上的詞,好讓後生望而敬畏.那我們一起來捋一捋. 負載就是負擔. 均衡就是平均分.這樣 一說就是負擔平均分.

伺服器也要減減壓
我們都知道伺服器是第三產業,服務行業,客戶來了,你不能不服務.客戶少還行,客戶多了一臺伺服器就頂不住了,怎麼辦?我們找來多台伺服器,讓這些伺服器去均分客戶然後服務響應.或者讓某些伺服器只乾一類時,來提高效率.
那麼如何讓我們的代理伺服器知道哪些伺服器是可以去幹活的,而且擅長乾什麼活呢?這個時候就需要我們去配置了.

編輯nginx.conf文件(註意 upstream {} 配置信息必須在 Server {} 配置的外部,不是 Server {} 的裡面)

upstream itbsl {# 伺服器集群的組名
    server 192.168.3.110:80 weight=1 max_fails=2 fail_timeout=30s;
    server 192.168.3.111:80 weight=1 max_fails=2 fail_timeout=30s;
    #server 伺服器的ip:埠號 權重 最大失敗次數 最大連接時間
}

說明:

  1. weight的值越大,表明這台伺服器辦事效率高,老闆喜歡,有事了,找他的概率大.
  2. max_fails要說明的是,你找這台伺服器辦事,叫他2次如果還不理你,你不要對他報以希望了.
  3. fail_timeout要說的是,給這台伺服器一件小事讓它辦,30s還沒辦完,算了,不靠譜,不要等了,找其他人吧.

Nginx中的幾種負載均衡方式

  1. 輪詢(預設)
    每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。
  2. weight
    指定輪詢幾率,weight和訪問比率成正比,用於後端伺服器性能不均的情況。
  3. ip_hash
    每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個後端伺服器,可以解決session的問題。
  4. fair(第三方)
    按後端伺服器的響應時間來分配請求,響應時間短的優先分配。
  5. url_hash(第三方)
    按訪問url的hash結果來分配請求,使每個url定向到同一個後端伺服器,後端伺服器為緩存時比較有效。

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 學習JSX,先瞭解一下createElement 提到JSX,不可避免的就要提到createElement,當你看完本節,你會發現,奇怪的知識又增多了。ok,我們接著上一部分繼續講。這一次的準備工作是瞭解createElement。 從Vue編譯後的代碼看createElement 你是否看過寫的V ...
  • 1.前景怎麼樣? web前端人才需求還會持續增加 據國內權威數據統計,未來五年,我國信息化人才總需求量高達1500萬—2000萬人。其中“網路工程”“UI設計”“web前端”等人才的缺口最為突出,所以2020年web前端的市場需求還是很大的。更有甚者,目前不僅大型互聯網公司擬相繼成立了專屬的web ...
  • 編寫如下的函數: function drawHexagon(x,y,L) { ctx.beginPath(); ctx.moveTo(x-sqrt3/2*L,y-L/2); ctx.lineTo(x-sqrt3/2*L,y+L/2); ctx.lineTo(x,y+L); ctx.lineTo(x+ ...
  • 作者:騰訊有數 - TabPan Taro 引入了騰訊有數的微信小程式無痕埋點能力,為 Taro 的開發者提供真·零開發的 8 大無痕埋點能力以及自定義埋點能力,包含小程式啟動、顯示、隱藏、頁面瀏覽、頁面離開、分享、下拉刷新、上拉觸底等八大自動化埋點能力以及搜索、商品歸因等定製化埋點,以及經營分析、 ...
  • 一、畫折線圖需要有如下準備如下: 1、繪製網格 2、繪製坐標系 3、繪製點 4、點連線就成了折線圖 二、繪製網格 1、確認網格(每個格子)的大小 2、確認X軸方向有多少條橫線 3、確認Y軸方向有多少條豎線 4、遍歷畫出來 <!DOCTYPE html> <html lang="en"> <head> ...
  • 上一篇 前端 瀏覽器所在客戶端信息,有瀏覽器信息後,以下是區分手機的詳細類型 雖然沒難度,但是記錄下來,方便後續無腦複製: 蘋果APP類型 1 // iOS 2 isIPhone = (userAgent: string) => /iphone/i.test(userAgent); 3 isIPod ...
  • 什麼是建造者模式 經典建造者模式的優缺點 對建造者模式的擴展 什麼是建造者模式 建造者模式將一個複雜的對象的構建與它的表示分離,使得同樣的構建過程可以創建不同的表示。創建者模式隱藏了複雜對象的創建過程,它把複雜對象的創建過程加以抽象,通過子類繼承或者重載的方式,動態的創建具有複合屬性的對象。 雖然與 ...
  • Java容器 集合是一種存儲數據的容器,是Java開發中使用最頻繁的對象類型之一. 或許提起Collection,都會第一時間意識到List和Set以及Map等相關關鍵詞。因為這幾乎是我們日常開發里接觸最多和遇見最頻繁的,以及與數據處理交互最多的Java對象類型。換句話說,就是我們與數據進行處理的數 ...
一周排行
    -Advertisement-
    Play Games
  • Dapr Outbox 是1.12中的功能。 本文只介紹Dapr Outbox 執行流程,Dapr Outbox基本用法請閱讀官方文檔 。本文中appID=order-processor,topic=orders 本文前提知識:熟悉Dapr狀態管理、Dapr發佈訂閱和Outbox 模式。 Outbo ...
  • 引言 在前幾章我們深度講解了單元測試和集成測試的基礎知識,這一章我們來講解一下代碼覆蓋率,代碼覆蓋率是單元測試運行的度量值,覆蓋率通常以百分比表示,用於衡量代碼被測試覆蓋的程度,幫助開發人員評估測試用例的質量和代碼的健壯性。常見的覆蓋率包括語句覆蓋率(Line Coverage)、分支覆蓋率(Bra ...
  • 前言 本文介紹瞭如何使用S7.NET庫實現對西門子PLC DB塊數據的讀寫,記錄了使用電腦模擬,模擬PLC,自至完成測試的詳細流程,並重點介紹了在這個過程中的易錯點,供參考。 用到的軟體: 1.Windows環境下鏈路層網路訪問的行業標準工具(WinPcap_4_1_3.exe)下載鏈接:http ...
  • 從依賴倒置原則(Dependency Inversion Principle, DIP)到控制反轉(Inversion of Control, IoC)再到依賴註入(Dependency Injection, DI)的演進過程,我們可以理解為一種逐步抽象和解耦的設計思想。這種思想在C#等面向對象的編 ...
  • 關於Python中的私有屬性和私有方法 Python對於類的成員沒有嚴格的訪問控制限制,這與其他面相對對象語言有區別。關於私有屬性和私有方法,有如下要點: 1、通常我們約定,兩個下劃線開頭的屬性是私有的(private)。其他為公共的(public); 2、類內部可以訪問私有屬性(方法); 3、類外 ...
  • C++ 訪問說明符 訪問說明符是 C++ 中控制類成員(屬性和方法)可訪問性的關鍵字。它們用於封裝類數據並保護其免受意外修改或濫用。 三種訪問說明符: public:允許從類外部的任何地方訪問成員。 private:僅允許在類內部訪問成員。 protected:允許在類內部及其派生類中訪問成員。 示 ...
  • 寫這個隨筆說一下C++的static_cast和dynamic_cast用在子類與父類的指針轉換時的一些事宜。首先,【static_cast,dynamic_cast】【父類指針,子類指針】,兩兩一組,共有4種組合:用 static_cast 父類轉子類、用 static_cast 子類轉父類、使用 ...
  • /******************************************************************************************************** * * * 設計雙向鏈表的介面 * * * * Copyright (c) 2023-2 ...
  • 相信接觸過spring做開發的小伙伴們一定使用過@ComponentScan註解 @ComponentScan("com.wangm.lifecycle") public class AppConfig { } @ComponentScan指定basePackage,將包下的類按照一定規則註冊成Be ...
  • 操作系統 :CentOS 7.6_x64 opensips版本: 2.4.9 python版本:2.7.5 python作為腳本語言,使用起來很方便,查了下opensips的文檔,支持使用python腳本寫邏輯代碼。今天整理下CentOS7環境下opensips2.4.9的python模塊筆記及使用 ...