面試的加分項:懂點 Nginx 反向代理與負(fù)載均衡

學(xué)到老活到老

前端圈一直很新备徐,一直要不停的學(xué)習(xí)秀菱,而且在進(jìn)入大廠的路上,還要求熟悉一門后臺語言等等。用一句別人開玩笑的話來說洪规,java十年前的技術(shù)現(xiàn)在還能用,而前端的技術(shù)就不是這樣的了

突然想起了deno項目發(fā)布的時候,一個搞笑的issue叉谜,“求別更新了,老子學(xué)不動了”码倦。雖然看起來是一個玩笑的issue,但卻道出了前端們不得不表現(xiàn)出來的疲態(tài)槽畔,知識點越來越龐大,學(xué)習(xí)的內(nèi)容越來越多

也聽到一些朋友們說,換成現(xiàn)在再面試阿里,恐怕不好進(jìn)了啊。當(dāng)然很多都是隨便一說的玩笑話,聽過一笑便可肆汹,不必當(dāng)真伟件,也不必抱怨了

好了谴返,今天就直接來說一下主題吧,前端要了解一些運(yùn)維的Nginx用法,內(nèi)容不多奇颠,簡單看看就好广鳍,這兩個功能在工作當(dāng)中就夠用了,那么首先來看個問題诞吱,什么是反向代理與負(fù)載均衡

什么是反向代理與負(fù)載均衡

什么是反向代理

當(dāng)我們有一個服務(wù)器集群歌馍,并且服務(wù)器集群中的每臺服務(wù)器的內(nèi)容一樣的時候,同樣我們要直接從個人電腦訪問到服務(wù)器集群服務(wù)器的時候無法訪問,必須通過第三方服務(wù)器才能訪問集群

這個時候,我們通過第三方服務(wù)器訪問服務(wù)器集群的內(nèi)容卵史,但是我們并不知道是哪一臺服務(wù)器提供的內(nèi)容啄踊,此種代理方式稱為反向代理

什么是負(fù)載均衡

公司會建立很多的服務(wù)器,這些服務(wù)器組成了服務(wù)器集群撵儿,然后淀歇,當(dāng)用戶訪問網(wǎng)站的時候纳决,先訪問一個中間服務(wù)器阔加,再讓這個中間服務(wù)器在服務(wù)器集群中選擇一個壓力較小的服務(wù)器,然后將該訪問請求引入選擇的服務(wù)器

所以满钟,用戶每次訪問胜榔,都會保證服務(wù)器集群中的每個服務(wù)器壓力趨于平衡,分擔(dān)了服務(wù)器壓力湃番,避免了服務(wù)器崩潰的情況

一句話:nginx會給你分配服務(wù)器壓力小的去訪問

Nginx反向代理與負(fù)載均衡的實現(xiàn)

用戶訪問網(wǎng)站的時候首先會訪問nginx服務(wù)器夭织,然后nginx服務(wù)器再從服務(wù)器集群中選擇壓力較小的服務(wù)器,將該訪問請求引向該服務(wù)器

nginx配置

下面修改配置方面我就從mac系統(tǒng)下來進(jìn)行簡單的演示吠撮,如何安裝的話也暫以mac為主了尊惰,windows系統(tǒng)直接去Nginx官網(wǎng)下載安裝即可

下圖為進(jìn)入nginx文件夾下的文件內(nèi)容

當(dāng)進(jìn)到這個目錄下,我們就可以操作nginx了,接下來就列舉一些非常非常有用的命令弄屡,多敲幾遍题禀,一定要記住

nginx常用命令

啟動nginx

nginx

當(dāng)你敲完nginx這5個鍵的時候,并沒有任何反應(yīng)琢岩,此時你只需訪問localhost:8080(默認(rèn))即可

關(guān)閉nginx

如果出現(xiàn)下圖情況投剥,不要驚慌,是因為之前nginx被啟動過了

只需nginx -s stop担孔,停止nginx服務(wù)

然后再次啟動nginx即可

重啟nginx

nginx -s reload

每次修改完.conf文件就需要重啟nginx

檢查配置

檢查修改的nginx.conf配置是否正確

nginx -t

如果出現(xiàn)下面ok和successfull就代表正確了江锨,其他的都不對

nginx:the configuration file/usr/local/etc/nginx/nginx.conf syntaxisok

nginx:configuration file/usr/local/etc/nginx/nginx.conf testissuccessful

對于我們前端來說正常工作當(dāng)中,倒是不需要過多的修改nginx的糕篇。我們之所以修改nginx配置啄育,是為了做一些反向代理罷了

proxy_pass

nginx反向代理主要通過proxy_pass來配置,將你項目的開發(fā)機(jī)地址填寫到proxy_pass后面拌消,正常的格式為proxy_pass URL即可

Upstream模塊實現(xiàn)負(fù)載均衡

ip_hash指令

server指令

upstream指令及相關(guān)變量

上面寫的三個指令挑豌,我們直接通過代碼來一一分析

上面修改的nginx.conf就是上圖中花圈的那個文件,nginx配置的主要修改就在這里墩崩∶ビⅲ化繁為簡,把原本nginx.conf里的內(nèi)容直接替換為上面的不到20行的代碼了

既然不到20行鹦筹,那就把里面對應(yīng)的內(nèi)容統(tǒng)統(tǒng)解釋一下吧铝阐,有個了解就好

worker_processes

worker_connections

upstream模塊

負(fù)載均衡就靠它

語法格式:upstream name {}

里面寫的兩個server分別對應(yīng)著不同的服務(wù)器

server模塊

實現(xiàn)反向代理

listen監(jiān)督端口號

location / {}訪問根路徑

proxy_pass http://firstdemo,代理到firstdemo里兩個服務(wù)器上

上面修改了nginx.conf之后铐拐,別忘了最重要的一步重啟nginx

那么再次訪問localhost:8080徘键,會看到如下圖頁面

還有另一個頁面

每次刷新都會訪問不同的服務(wù)器,這樣就做到了負(fù)載均衡處理

不過遍蟋,更應(yīng)該做到的是當(dāng)用戶第一次訪問到其中一臺服務(wù)器后吹害,下次再訪問的時候就直接訪問該臺服務(wù)器就好了,不用總變化了虚青。那么就發(fā)揮了ip_hash的威力了

ip_hash它的作用是如果第一次訪問該服務(wù)器后就記錄它呀,之后再訪問都是該服務(wù)器了,這樣比如第一次訪問是33服務(wù)器挟憔,那之后再訪問也會分配為33服務(wù)器訪問了

工作中的簡單使用

在公司開發(fā)項目的時候钟些,遇到設(shè)計,產(chǎn)品走查環(huán)節(jié)的時候绊谭,不能每次都讓他們?nèi)ヅ湟粋€host政恍,畢竟這樣不友好,走查起來有麻煩达传。所以更應(yīng)該給他們直觀的感受篙耗,既給一個訪問地址就可以看到樣子

下面給大家看一下迫筑,我正常在公司時nginx做的反向代理配置,和咱們上面的如出一轍宗弯,只是加了一個server_name脯燃,用指定的域名去訪問即可

每次修改完nginx配置后不要忘記重啟nginx才能生效,這樣只需要訪問chd.news.so.m.qss.test.so.com這個地址就可以查看我的開發(fā)環(huán)境蒙保,進(jìn)行走查了辕棚。

這就是nginx最大的功能,反向代理我也接觸的不是很多邓厕,畢竟不是專業(yè)運(yùn)維出身逝嚎,可比性差了很多。略知一二详恼,也只是方便大家工作中使用吧补君,再次感謝大家的收看了,哈哈

擴(kuò)展閱讀

面試官想看到的以及面試者需要準(zhǔn)備的昧互!

史上最全 40 道 Dubbo 面試題及答案挽铁,看完碾壓面試官!

Java動態(tài)代理與CGLIB

反射---Java高級開發(fā)必須懂的

你的項目應(yīng)該如何正確分層敞掘?

作者:chenhongdong

來源:https://juejin.im/post/5b01336af265da0b8a67e5c9

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末叽掘,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子玖雁,更是在濱河造成了極大的恐慌够掠,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件茄菊,死亡現(xiàn)場離奇詭異,居然都是意外死亡赊堪,警方通過查閱死者的電腦和手機(jī)面殖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哭廉,“玉大人脊僚,你說我怎么就攤上這事∽翊拢” “怎么了辽幌?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長椿访。 經(jīng)常有香客問我乌企,道長,這世上最難降的妖魔是什么成玫? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任加酵,我火速辦了婚禮拳喻,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘猪腕。我一直安慰自己冗澈,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布陋葡。 她就那樣靜靜地躺著亚亲,像睡著了一般。 火紅的嫁衣襯著肌膚如雪腐缤。 梳的紋絲不亂的頭發(fā)上捌归,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天,我揣著相機(jī)與錄音柴梆,去河邊找鬼陨溅。 笑死,一個胖子當(dāng)著我的面吹牛绍在,可吹牛的內(nèi)容都是我干的门扇。 我是一名探鬼主播,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼偿渡,長吁一口氣:“原來是場噩夢啊……” “哼臼寄!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起溜宽,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤吉拳,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后适揉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體留攒,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年嫉嘀,在試婚紗的時候發(fā)現(xiàn)自己被綠了炼邀。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡剪侮,死狀恐怖拭宁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情瓣俯,我是刑警寧澤杰标,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站彩匕,受9級特大地震影響腔剂,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜驼仪,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一桶蝎、第九天 我趴在偏房一處隱蔽的房頂上張望驻仅。 院中可真熱鬧,春花似錦登渣、人聲如沸噪服。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽粘优。三九已至,卻和暖如春呻顽,著一層夾襖步出監(jiān)牢的瞬間雹顺,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工廊遍, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留嬉愧,地道東北人。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓喉前,卻偏偏與公主長得像没酣,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子卵迂,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容