国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【云原生】使用nginx反向代理后臺(tái)多服務(wù)器

這篇具有很好參考價(jià)值的文章主要介紹了【云原生】使用nginx反向代理后臺(tái)多服務(wù)器。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

背景

隨著業(yè)務(wù)發(fā)展, 用戶訪問(wèn)量激增,單臺(tái)服務(wù)器已經(jīng)無(wú)法滿足現(xiàn)有的訪問(wèn)壓力,研究后需要將后臺(tái)服務(wù)從原來(lái)的單臺(tái)升級(jí)為多臺(tái)服務(wù)器,那么原來(lái)的訪問(wèn)方式無(wú)法滿足,所以引入nginx來(lái)代理多臺(tái)服務(wù)器,統(tǒng)一請(qǐng)求入口。

什么是nginx

Nginx[engine x]是一個(gè)免費(fèi)開(kāi)源Web服務(wù)器,是一個(gè)HTTP和反向代理服務(wù)器,郵件代理服務(wù)器, 和一個(gè)通用的 TCP/UDP 代理服務(wù)器,最初由俄羅斯軟件工程師Igor Sysoev撰寫(xiě)。nginx專注于高性能、高并發(fā)性和低內(nèi)存使用率。能夠在高并發(fā)下給網(wǎng)站提供穩(wěn)定的服務(wù)。

相關(guān)概念
  • 正向代理
    請(qǐng)求概述:客戶端C知道資源D在服務(wù)器A中,但是無(wú)法直接訪問(wèn)服務(wù)器A,此時(shí)知道服務(wù)器N與服務(wù)器A在同一局域網(wǎng)中,并且可以相互訪問(wèn),因?yàn)榭蛻舳薈可以訪問(wèn)服務(wù)器N,因此客戶端C通過(guò)服務(wù)器N訪問(wèn)服務(wù)器A得到資源D
    nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot

理解

  1. 正向代理對(duì)于客戶端C來(lái)說(shuō)他明確知道他要訪問(wèn)的資源D在哪個(gè)服務(wù)器上;
  2. 對(duì)于服務(wù)器N來(lái)說(shuō)他只充當(dāng)客戶端C的中間代理角色;而對(duì)于服務(wù)器A來(lái)說(shuō)他只知道訪問(wèn)他的資源的是服務(wù)器N,根本不知道客戶端C的存在。
  • 反向代理
    請(qǐng)求概述客戶端C并不知道服務(wù)器A和服務(wù)器B的存在,客戶端C只知道訪問(wèn)服務(wù)器N能獲得資源D,只不過(guò)提供客戶端C資源的都來(lái)著服務(wù)器A或者服務(wù)器B
    nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot

理解

  1. 反向代理對(duì)于客戶端C來(lái)說(shuō),他是不知道資源D具體在哪里,也不知道具體由誰(shuí)提供。
  2. 對(duì)于服務(wù)器N來(lái)說(shuō)每次都接受用戶的請(qǐng)求,然后再把請(qǐng)求根據(jù)調(diào)度策略交給提供資源D的服務(wù)器A或者B,對(duì)于服務(wù)器A和B來(lái)說(shuō)同樣也都不知道訪問(wèn)這份資源D的真實(shí)用戶是誰(shuí),只是和服務(wù)器N進(jìn)行交互。
實(shí)操nginx代理springboot服務(wù)器

注:下文所有服務(wù)基于docker環(huán)境啟動(dòng)

  • 安裝nginx容器
    可參考:Docker安裝鏡像操作相關(guān)命令下滑到第6步
    安裝完成后可得到nginx映射在宿主機(jī)上相關(guān)的文件
    nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot
    并且啟動(dòng)nginx容器,映射端口:9001
    nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot

  • 打包springboot項(xiàng)目并docker運(yùn)行
    可參考:【云原生】springboot項(xiàng)目打包部署docker鏡像

    為了模擬多臺(tái)服務(wù)器,本文通過(guò)修改項(xiàng)目端口號(hào)(8088、8089),上傳打包了兩個(gè)springboot項(xiàng)目鏡像,分別啟動(dòng)了一個(gè)容器
    nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot

  • nginx代理配置修改
    進(jìn)入宿主機(jī)中的nginx文件,進(jìn)入conf文件
    nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot
    打開(kāi)后編輯default.conf注:對(duì)于nginx代理配置,主要修改這個(gè)文件)文件
    nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot
    1.模擬正向代理或者說(shuō)是一對(duì)一代理配置內(nèi)容:

server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;

   #nginx自帶主頁(yè)面配置
    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

   # 本次配置服務(wù)器新增內(nèi)容
    location /boot {
           	proxy_pass http://172.16.0.3:8089/web; # 單個(gè)服務(wù)器配置
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

}

注:配置文件新增內(nèi)容中 “/boot” 表示為映射到服務(wù)器的名稱前綴,當(dāng)代理的服務(wù)器增多,根據(jù)實(shí)際情況自定義不同的名稱,便于區(qū)分。

  1. 模擬反向代理或者說(shuō)代理多個(gè)服務(wù)器配置:
# 新增內(nèi)容 多個(gè)服務(wù)器配置
upstream backend {
        ip_hash; #負(fù)載均衡策略
        server 172.16.0.3:8089;  # 第一個(gè) Tomcat 服務(wù)器的本地端口
        server 172.16.0.3:8088;  # 第二個(gè) Tomcat 服務(wù)器的本地端口
}

server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;

   #nginx自帶主頁(yè)面
    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

   #服務(wù)器配置
    location /boot {
           # proxy_pass http://172.16.0.3:8089/web; # 單個(gè)服務(wù)器配置
            proxy_pass http://backend/web; # 多個(gè)服務(wù)器配置
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

注:上述配置中 “ip_hash” 為nginx的一種負(fù)載均衡策略。nginx支持四種負(fù)載均衡策略。

  1. 輪詢(Round Robin)策略
 upstream backend {
        server 172.16.0.3:8089;  # 第一個(gè) Tomcat 服務(wù)器的本地端口
        server 172.16.0.3:8088;  # 第二個(gè) Tomcat 服務(wù)器的本地端口
  } 
  1. 最少連接(Least Connections)策略:
  upstream backend {
  	  least_conn;
      server 172.16.0.3:8089;  # 第一個(gè) Tomcat 服務(wù)器的本地端口
      server 172.16.0.3:8088;  # 第二個(gè) Tomcat 服務(wù)器的本地端口
} 
  1. IP哈希(IP Hash)策略:
   upstream backend {
   	   ip_hash;
       server 172.16.0.3:8089;  # 第一個(gè) Tomcat 服務(wù)器的本地端口
       server 172.16.0.3:8088;  # 第二個(gè) Tomcat 服務(wù)器的本地端口
 } 
  1. 加權(quán)輪詢(Weighted Round Robin)策略:
 upstream backend {
     server 172.16.0.3:8089 weight=2;  # 第一個(gè) Tomcat 服務(wù)器的本地端口
     server 172.16.0.3:8088 weight=1;  # 第二個(gè) Tomcat 服務(wù)器的本地端口
} 

詳細(xì)解析可參考:Nginx負(fù)載均衡多種策略配置

  • 訪問(wèn)服務(wù)器
    完成上述nginx配置后,重啟nginx容器。
    先不使用代理訪問(wèn)后臺(tái)客戶端:http://ip地址:8088/web/login
    nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot
    使用nginx代理訪問(wèn)客戶端:http://ip地址:9001/boot/login

nginx多個(gè)反向代理,云原生,中間件,云原生,nginx,spring boot
上述地址中的端口和路由地址都發(fā)生了改變,但代理訪問(wèn)客戶端與不適用代理返回的頁(yè)面一致,則nginx代理配置成功


使用nginx代理可以很好的隱藏內(nèi)部服務(wù)器的地址,不暴露在公網(wǎng)中,可配置為內(nèi)網(wǎng)地址,減少網(wǎng)絡(luò)請(qǐng)求壓力,安全性提高,只需開(kāi)放代理服務(wù)器地址供外部訪問(wèn)即可。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-764559.html

到了這里,關(guān)于【云原生】使用nginx反向代理后臺(tái)多服務(wù)器的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 使用Nginx反向代理,將React項(xiàng)目打包后部署到服務(wù)器的二級(jí)子目錄

    使用Nginx反向代理,將React項(xiàng)目打包后部署到服務(wù)器的二級(jí)子目錄

    我們上線一個(gè)項(xiàng)目的時(shí)候如果服務(wù)器上只有這一個(gè)項(xiàng)目的話可以直接將打包后的代碼部署到服務(wù)器指定的根目錄,然后直接上線看就可以看到,不用配置其他項(xiàng)。 但是,如果服務(wù)器有多個(gè)項(xiàng)目的話,我們就需要將代碼部署到服務(wù)器根目錄里邊的子目錄了,而放到子目錄的話,

    2024年03月26日
    瀏覽(28)
  • 【代理服務(wù)器】Squid 反向代理與Nginx緩存代理

    【代理服務(wù)器】Squid 反向代理與Nginx緩存代理

    如果 Squid 反向代理服務(wù)器中緩存了該請(qǐng)求的資源,則將該請(qǐng)求的資源直接返回給客戶端;否則反向代理服務(wù)器將向后臺(tái)的 Web 服務(wù)器請(qǐng)求資源,然后將請(qǐng)求的應(yīng)答返回給客戶端,同時(shí)也將該應(yīng)答緩存在本地,供下一個(gè)請(qǐng)求者使用。 緩存網(wǎng)頁(yè)對(duì)象,減少重復(fù)請(qǐng)求 將互聯(lián)網(wǎng)請(qǐng)求

    2024年02月12日
    瀏覽(18)
  • nginx 反向代理服務(wù)器端口轉(zhuǎn)發(fā)問(wèn)題

    nginx 反向代理服務(wù)器端口轉(zhuǎn)發(fā)問(wèn)題

    先介紹一下項(xiàng)目背景,公司里有個(gè)外包Saas項(xiàng)目,這里假設(shè)為A項(xiàng)目( 前后端不分離 );項(xiàng)目架構(gòu)大概如下;但是項(xiàng)目部署到生產(chǎn)環(huán)境時(shí),那臺(tái)服務(wù)器80端口被其他應(yīng)用占用了(我尼瑪...),nginx監(jiān)聽(tīng)端口那邊只能監(jiān)聽(tīng)其他端口了,比如監(jiān)聽(tīng):18000,通過(guò)nginx反向代理將18000端口轉(zhuǎn)發(fā)到

    2024年02月04日
    瀏覽(25)
  • Nginx反向代理服務(wù)器簡(jiǎn)單配置案例

    Nginx反向代理服務(wù)器簡(jiǎn)單配置案例

    --------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------

    2024年02月03日
    瀏覽(18)
  • Nginx HTTP和反向代理服務(wù)器

    Nginx HTTP和反向代理服務(wù)器

    1、概念: Nginx ?(engine x) 是一個(gè)高性能的HTTP和反向代理web服務(wù)器。 2、什么是代理服務(wù)器: 概念: 代理服務(wù)器是介于客戶端和Web服務(wù)器之間的另一臺(tái)服務(wù)器,有了它之后,瀏覽器不是直接到Web服務(wù)器去取回網(wǎng)頁(yè)信息,而是通過(guò)向代理服務(wù)器發(fā)送請(qǐng)求,信號(hào)會(huì)先送到代理服務(wù)

    2024年02月04日
    瀏覽(33)
  • nginx反向代理服務(wù)器及負(fù)載均衡服務(wù)配置

    nginx反向代理服務(wù)器及負(fù)載均衡服務(wù)配置

    一、正向代理與反向代理 正向代理:是一個(gè)位于客戶端和原始服務(wù)器(oricin server)之間的服務(wù)器,為了從原始服務(wù)器取得內(nèi)容,客戶端向代理發(fā)送一個(gè)請(qǐng)求并指定目標(biāo)(原始服務(wù)器),然后代理向原始服務(wù)器轉(zhuǎn)交請(qǐng)求并將獲得的內(nèi)容返回給客戶端。 正向代理的典型用途是為在防火

    2024年02月04日
    瀏覽(25)
  • 超全Nginx反向代理服務(wù)器原理+實(shí)戰(zhàn)篇

    超全Nginx反向代理服務(wù)器原理+實(shí)戰(zhàn)篇

    1.Nginx簡(jiǎn)介和安裝部署 1.1.什么是Nginx 高性能的[HTTP]和反向代理的web服務(wù)器,用c語(yǔ)言編寫(xiě),高性能支持單機(jī)千萬(wàn)級(jí)連接,強(qiáng)大的第三方庫(kù)支持,負(fù)載均衡、靜態(tài)文件服務(wù)器等。 1.2.Nginx的用途 搭建前端靜態(tài)資源服務(wù)器、文件服務(wù)器 負(fù)載均衡Upstream配置實(shí)戰(zhàn)、后端節(jié)點(diǎn)高可用性探

    2024年02月01日
    瀏覽(22)
  • 輕量級(jí)服務(wù)器nginx:反向代理的具體配置

    輕量級(jí)服務(wù)器nginx:反向代理的具體配置

    例如:第一章 Python 機(jī)器學(xué)習(xí)入門(mén)之pandas的使用 我們?cè)趪?guó)內(nèi),如果要訪問(wèn)谷歌,那就無(wú)法訪問(wèn),需要借助一個(gè)正向代理服務(wù)器,先將信息傳給代理服務(wù)器,代理服務(wù)器所在的位置可以訪問(wèn)谷歌,這樣就可以做到代理去谷歌取到并返回?cái)?shù)據(jù),并把信息發(fā)送到自己的終端上。 如果

    2023年04月25日
    瀏覽(28)
  • Nginx:高性能的Web服務(wù)器與反向代理

    在現(xiàn)代互聯(lián)網(wǎng)應(yīng)用程序的開(kāi)發(fā)和部署中,選擇一個(gè)可靠、高性能的Web服務(wù)器是至關(guān)重要的。Nginx是一個(gè)備受推崇的選擇,它以其卓越的性能和可靠性在開(kāi)發(fā)者社區(qū)中享有盛譽(yù)。本文將介紹Nginx的概念、優(yōu)勢(shì),以及如何使用Nginx作為Web服務(wù)器和反向代理。 Nginx(發(fā)音為“engine X”

    2024年02月19日
    瀏覽(26)
  • nestjs:nginx反向代理服務(wù)器后如何獲取請(qǐng)求的ip地址

    問(wèn)題: ? ? ? ? 如題 參考: ????????nodejs+nginx獲取真實(shí)ip-騰訊云開(kāi)發(fā)者社區(qū)-騰訊云 ????????「轉(zhuǎn)」從限流談到偽造 IP nginx remote_addr ? ? ? ?? 解決辦法: 1.設(shè)置nginx ? ? ? ? 對(duì)于代理部分,對(duì)http header添加Host、X-Real-IP、X-Forwarded-For(最重要) ???????? 2.nestjs使用

    2024年02月13日
    瀏覽(23)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包