国产精品999,99热在线观看,99国产精品99久久久久久,欧美性猛交99久久久久99按摩

不看后悔!小程序配置反向代理(squid反向代理配置)

百度智能小程序的代理域名配置中的小程序域名是什么?

小程序域名為開發(fā)者進(jìn)行反向代理后,最終承載小程序web化的域名需要注意的是:小程序域名和H5域名不能為同一個

請教問題nginx反向代理proxy

一、反向代理:Web服務(wù)器的“經(jīng)紀(jì)人”

1.1反向代理初印象

反向代理(ReverseProxy)方式是指以代理服務(wù)器來接受internet上的連接請求,然后將請求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,并將從服務(wù)器上得到的結(jié)果返回給internet上請求連接的客戶端,此時代理服務(wù)器對外就表現(xiàn)為一個服務(wù)器。

Nginx搭建反向代理服務(wù)器過程詳解

從上圖可以看出:反向代理服務(wù)器位于網(wǎng)站機(jī)房,代理網(wǎng)站W(wǎng)eb服務(wù)器接收Http請求,對請求進(jìn)行轉(zhuǎn)發(fā)。

1.2反向代理的作用

①保護(hù)網(wǎng)站安全:任何來自Internet的請求都必須先經(jīng)過代理服務(wù)器;

Nginx搭建反向代理服務(wù)器過程詳解

②通過配置緩存功能加速Web請求:可以緩存真實Web服務(wù)器上的某些靜態(tài)資源,減輕真實Web服務(wù)器的負(fù)載壓力;

Nginx搭建反向代理服務(wù)器過程詳解

③實現(xiàn)負(fù)載均衡:充當(dāng)負(fù)載均衡服務(wù)器均衡地分發(fā)請求,平衡集群中各個服務(wù)器的負(fù)載壓力;

Nginx搭建反向代理服務(wù)器過程詳解

二、初識Nginx:簡單卻不平凡

2.1Nginx是神馬?

Nginx搭建反向代理服務(wù)器過程詳解

Nginx是一款輕量級的網(wǎng)頁服務(wù)器、反向代理器以及電子郵件代理服務(wù)器。其將源代碼以類BSD許可證的形式發(fā)布,因它的穩(wěn)定性、豐富的功能集、示例配置文件和低系統(tǒng)資源的消耗而聞名。

Source:Nginx(發(fā)音同enginex),它是由俄羅斯程序員IgorSysoev所開發(fā)的。起初是供俄國大型的門戶網(wǎng)站及搜索引擎Rambler(俄語:Рамблер)使用。此軟件BSD-like協(xié)議下發(fā)行,可以在UNIX、GNU/Linux、BSD、MacOSX、Solaris,以及MicrosoftWindows等操作系統(tǒng)中運(yùn)行。

說到Web服務(wù)器,Apache服務(wù)器和IIS服務(wù)器是兩大巨頭;但是運(yùn)行速度更快、更靈活的對手:Nginx正在迎頭趕上。

2.2Nginx的應(yīng)用現(xiàn)狀

Nginx已經(jīng)在俄羅斯最大的門戶網(wǎng)站──RamblerMedia(

www.rambler.ru

)上運(yùn)行了3年時間,同時俄羅斯超過20%的虛擬主機(jī)平臺采用Nginx作為反向代理服務(wù)器。

Nginx搭建反向代理服務(wù)器過程詳解Nginx搭建反向代理服務(wù)器過程詳解Nginx搭建反向代理服務(wù)器過程詳解Nginx搭建反向代理服務(wù)器過程詳解Nginx搭建反向代理服務(wù)器過程詳解

在國內(nèi),已經(jīng)有淘寶、新浪博客、新浪播客、網(wǎng)易新聞、六間房、56.com、Discuz!、水木社區(qū)、豆瓣、YUPOO、海內(nèi)、迅雷在線等多家網(wǎng)站使用Nginx作為Web服務(wù)器或反向代理服務(wù)器。

2.3Nginx的核心特點

(1)跨平臺:Nginx可以在大多數(shù)UnixlikeOS編譯運(yùn)行,而且也有Windows的移植版本;

(2)配置異常簡單:非常容易上手。配置風(fēng)格跟程序開發(fā)一樣,神一般的配置;

(3)非阻塞、高并發(fā)連接:數(shù)據(jù)復(fù)制時,磁盤I/O的第一階段是非阻塞的。官方測試能夠支撐5萬并發(fā)連接,在實際生產(chǎn)環(huán)境中跑到2~3萬并發(fā)連接數(shù)。(這得益于Nginx使用了最新的epoll模型);

PS:對于一個Web服務(wù)器來說,首先看一個請求的基本過程:建立連接—接收數(shù)據(jù)—發(fā)送數(shù)據(jù),在系統(tǒng)底層看來:上述過程(建立連接—接收數(shù)據(jù)—發(fā)送數(shù)據(jù))在系統(tǒng)底層就是讀寫事件。

①如果采用阻塞調(diào)用的方式,當(dāng)讀寫事件沒有準(zhǔn)備好時,必然不能夠進(jìn)行讀寫事件,那么久只好等待,等事件準(zhǔn)備好了,才能進(jìn)行讀寫事件,那么請求就會被耽擱。

②既然沒有準(zhǔn)備好阻塞調(diào)用不行,那么采用非阻塞調(diào)用方式。非阻塞就是:事件馬上返回,告訴你事件還沒準(zhǔn)備好呢,你慌什么,過會再來吧。好吧,你過一會,再來檢查一下事件,直到事件準(zhǔn)備好了為止,在這期間,你就可以先去做其它事情,然后再來看看事件好了沒。雖然不阻塞了,但你得不時地過來檢查一下事件的狀態(tài),你可以做更多的事情了,但帶來的開銷也是不小的。

(4)事件驅(qū)動:通信機(jī)制采用epoll模型,支持更大的并發(fā)連接。

①非阻塞通過不斷檢查事件的狀態(tài)來判斷是否進(jìn)行讀寫操作,這樣帶來的開銷很大,因此就有了異步非阻塞的事件處理機(jī)制。這種機(jī)制讓你可以同時監(jiān)控多個事件,調(diào)用他們是阻塞的,但可以設(shè)置超時時間,在超時時間之內(nèi),如果有事件準(zhǔn)備好了,就返回。這種機(jī)制解決了上面阻塞調(diào)用與非阻塞調(diào)用的兩個問題。

②以epoll模型為例:當(dāng)事件沒有準(zhǔn)備好時,就放入epoll(隊列)里面。如果有事件準(zhǔn)備好了,那么就去處理;如果事件返回的是EAGAIN,那么繼續(xù)將其放入epoll里面。從而,只要有事件準(zhǔn)備好了,我們就去處理它,只有當(dāng)所有事件都沒有準(zhǔn)備好時,才在epoll里面等著。這樣,我們就可以并發(fā)處理大量的并發(fā)了,當(dāng)然,這里的并發(fā)請求,是指未處理完的請求,線程只有一個,所以同時能處理的請求當(dāng)然只有一個了,只是在請求間進(jìn)行不斷地切換而已,切換也是因為異步事件未準(zhǔn)備好,而主動讓出的。這里的切換是沒有任何代價,你可以理解為循環(huán)處理多個準(zhǔn)備好的事件,事實上就是這樣的。

③與多線程方式相比,這種事件處理方式是有很大的優(yōu)勢的,不需要創(chuàng)建線程,每個請求占用的內(nèi)存也很少,沒有上下文切換,事件處理非常的輕量級,并發(fā)數(shù)再多也不會導(dǎo)致無謂的資源浪費(上下文切換)。對于IIS服務(wù)器,每個請求會獨占一個工作線程,當(dāng)并發(fā)數(shù)上到幾千時,就同時有幾千的線程在處理請求了。這對操作系統(tǒng)來說,是個不小的挑戰(zhàn):因為線程帶來的內(nèi)存占用非常大,線程的上下文切換帶來的cpu開銷很大,自然性能就上不去,從而導(dǎo)致在高并發(fā)場景下性能下降嚴(yán)重。

總結(jié):通過異步非阻塞的事件處理機(jī)制,Nginx實現(xiàn)由進(jìn)程循環(huán)處理多個準(zhǔn)備好的事件,從而實現(xiàn)高并發(fā)和輕量級。

(5)Master/Worker結(jié)構(gòu):一個master進(jìn)程,生成一個或多個worker進(jìn)程。

Nginx搭建反向代理服務(wù)器過程詳解

PS:Master-Worker設(shè)計模式核心思想是將原來串行的邏輯并行化,并將邏輯拆分成很多獨立模塊并行執(zhí)行。其中主要包含兩個主要組件Master和Worker,Master主要將邏輯進(jìn)行拆分,拆分為互相獨立的部分,同時維護(hù)了Worker隊列,將每個獨立部分下發(fā)到多個Worker并行執(zhí)行,Worker主要進(jìn)行實際邏輯計算,并將結(jié)果返回給Master。

問:nginx采用這種進(jìn)程模型有什么好處?

答:采用獨立的進(jìn)程,可以讓互相之間不會影響,一個進(jìn)程退出后,其它進(jìn)程還在工作,服務(wù)不會中斷,Master進(jìn)程則很快重新啟動新的Worker進(jìn)程。當(dāng)然,Worker進(jìn)程的異常退出,肯定是程序有bug了,異常退出,會導(dǎo)致當(dāng)前Worker上的所有請求失敗,不過不會影響到所有請求,所以降低了風(fēng)險。

(6)內(nèi)存消耗小:處理大并發(fā)的請求內(nèi)存消耗非常小。在3萬并發(fā)連接下,開啟的10個Nginx進(jìn)程才消耗150M內(nèi)存(15M*10=150M)。

(7)內(nèi)置的健康檢查功能:如果Nginx代理的后端的某臺Web服務(wù)器宕機(jī)了,不會影響前端訪問。

(8)節(jié)省帶寬:支持GZIP壓縮,可以添加瀏覽器本地緩存的Header頭。

(9)穩(wěn)定性高:用于反向代理,宕機(jī)的概率微乎其微。

三、構(gòu)建實戰(zhàn):Nginx+IIS構(gòu)筑Web服務(wù)器集群的負(fù)載均衡

這里我們主要在Windows環(huán)境下,通過將同一個Web網(wǎng)站部署到不同服務(wù)器的IIS上,再通過一個統(tǒng)一的Nginx反響代理服務(wù)器對外提供統(tǒng)一訪問接入,實現(xiàn)一個最簡化的反向代理和負(fù)載均衡服務(wù)。但是,受限于實驗條件,我們這里主要在一臺計算機(jī)上進(jìn)行反向代理、IIS集群的模擬,具體的實驗環(huán)境如下圖所示:我們將nginx服務(wù)和web網(wǎng)站都部署在一臺計算機(jī)上,nginx監(jiān)聽http80端口,而web網(wǎng)站分別以不同的端口號(這里是8050及8060)部署在同一個IIS服務(wù)器上,用戶訪問localhost時,nginx作為反向代理將請求均衡地轉(zhuǎn)發(fā)給兩個IIS中不同端口的Web應(yīng)用程序進(jìn)行處理。雖然實驗環(huán)境很簡單而且有限,但是對于一個簡單的負(fù)載均衡效果而言,本文是可以達(dá)到并且展示的。

Nginx搭建反向代理服務(wù)器過程詳解

3.1準(zhǔn)備一個ASP.NET網(wǎng)站部署到IIS服務(wù)器集群中

(1)在VS中新建一個ASP.NETWeb應(yīng)用程序,但是為了在一臺計算機(jī)上展示效果,我們將這個Web程序復(fù)制一份,并修改兩個Web程序的Default.aspx,讓其的首頁顯示不同的一點信息。這里Web1展示的是“TheFirstWeb:”,而Web2展示的則是“TheSecondWeb”。

Nginx搭建反向代理服務(wù)器過程詳解

(2)調(diào)試運(yùn)行,看看兩個網(wǎng)站的效果如何?

①Web1的展示效果:

Nginx搭建反向代理服務(wù)器過程詳解

②Web2的展示效果:

Nginx搭建反向代理服務(wù)器過程詳解

③部署到IIS中,分配不同的端口號:這里我選擇了Web1:8050,Web2:8060

Nginx搭建反向代理服務(wù)器過程詳解

(3)總結(jié):在真實環(huán)境中,構(gòu)建Web應(yīng)用服務(wù)器集群的實現(xiàn)是將同一個Web應(yīng)用程序部署到Web服務(wù)器集群中的多個Web服務(wù)器上。

3.2下載Nginx并部署到服務(wù)器中作為自啟動的Windows服務(wù)

(1)到Nginx官網(wǎng)下載Nginx的Windows版本:

(這里我們使用nginx/Windows-1.4.7版本進(jìn)行實驗,本文底部有下載地址)

(2)解壓到磁盤任意目錄,例如這里我解壓到了:D:\Servers\nginx-1.4.7

(3)啟動、停止和重新加載服務(wù):通過cmd以守護(hù)進(jìn)程方式啟動nginx.exe:startnginx.exe,停止服務(wù):nginx-sstop,重新加載配置:nginx-sreload;

Nginx搭建反向代理服務(wù)器過程詳解

(4)每次以cmd方式啟動Nginx服務(wù)不符合實際要求,于是我們想到將其注冊為Windows服務(wù),并設(shè)置為自動啟動模式。這里,我們使用一個不錯的小程序:“WindowsServiceWrapper”,將nginx.exe注冊為Windows服務(wù),具體的步湊如下:

①下載最新版的WindowsServiceWrapper程序,比如我下載的名稱是“winsw-1.8-bin.exe”(本文底部有下載地址),然后把它命名成你想要的名字(比如:“nginx-service.exe”,當(dāng)然,你也可以不改名)

②將重命名后的nginx-service.exe復(fù)制到nginx的安裝目錄(比如,我這里是“D:\Servers\nginx-1.4.7″)

③在同一個目錄下創(chuàng)建一個WindowsServiceWrapper的XML配置文件,名稱必須與第一步重命名時使用的名稱一致(比如我這里是“nginx-service.xml”,如果,你沒有重命名,則應(yīng)該是“winsw-1.8-bin.xml”),這個XML的內(nèi)容如下:

nginx

NginxService

HighPerformanceNginxService

D:\Servers\nginx-1.4.7\nginx.exe

D:\Servers\nginx-1.4.7\

roll

-pD:\Servers\nginx-1.4.7

-pD:\Servers\nginx-1.4.7-sstop

④在命令行下執(zhí)行以下命令,以便將其注冊成Windows服務(wù):nginx-service.exeinstall

Nginx搭建反向代理服務(wù)器過程詳解

⑤接下來就可以在Windows服務(wù)列表看到Nginx服務(wù)了,這里我們可以將其設(shè)置為自動啟動了:

Nginx搭建反向代理服務(wù)器過程詳解

(5)總結(jié):在Windows環(huán)境中,要對外提供的Windows服務(wù)一般都要將其啟動類型設(shè)置為自動。

3.3修改Nginx核心配置文件nginx.conf

(1)進(jìn)程數(shù)與每個進(jìn)程的最大連接數(shù):

?nginx進(jìn)程數(shù),建議設(shè)置為等于CPU總核心數(shù)

?單個進(jìn)程最大連接數(shù),那么該服務(wù)器的最大連接數(shù)=連接數(shù)*進(jìn)程數(shù)

Nginx搭建反向代理服務(wù)器過程詳解

(2)Nginx的基本配置:

?監(jiān)聽端口一般都為http端口:80;

?域名可以有多個,用空格隔開:例如server_name

www.ha97.com

ha97.com;

Nginx搭建反向代理服務(wù)器過程詳解

(3)負(fù)載均衡列表基本配置:

?location/{}:對aspx后綴的進(jìn)行負(fù)載均衡請求,假如我們要對所有的aspx后綴的文件進(jìn)行負(fù)載均衡時,可以這樣寫:location~.*\.aspx${}

?proxy_pass:請求轉(zhuǎn)向自定義的服務(wù)器列表,這里我們將請求都轉(zhuǎn)向標(biāo)識為

的負(fù)載均衡服務(wù)器列表;

Nginx搭建反向代理服務(wù)器過程詳解

?在負(fù)載均衡服務(wù)器列表的配置中,weight是權(quán)重,可以根據(jù)機(jī)器配置定義權(quán)重(如果某臺服務(wù)器的硬件配置十分好,可以處理更多的請求,那么可以為其設(shè)置一個比較高的weight;而有一臺的服務(wù)器的硬件配置比較差,那么可以將前一臺的weight配置為weight=2,后一臺差的配置為weight=1)。weigth參數(shù)表示權(quán)值,權(quán)值越高被分配到的幾率越大;

Nginx搭建反向代理服務(wù)器過程詳解

(4)總結(jié):最基本的Nginx配置差不多就是上面這些內(nèi)容,當(dāng)然僅僅是最基礎(chǔ)的配置。(詳細(xì)的配置內(nèi)容請下載底部的nginx-1.4.7詳細(xì)查看)

3.4添加Nginx對于靜態(tài)文件的緩存配置

為了提高響應(yīng)速度,減輕真實服務(wù)器的負(fù)載,對于靜態(tài)資源我們可以在反向代理服務(wù)器中進(jìn)行緩存,這也是反向代理服務(wù)器的一個重要的作用。

(1)緩存靜態(tài)資源之圖片文件

root/nginx-1.4.7/staticresources/image:對于配置中提到的jpg/png等文件均定為到/nginx-1.4.7/staticresources/image文件夾中進(jìn)行尋找匹配并將文件返回;

expires7d:過期時效為7天,靜態(tài)文件不怎么更新,過期時效可以設(shè)大一點,如果頻繁更新,則可以設(shè)置得小一點;

TIPS:下面的樣式、腳本緩存配置同這里一樣,只是定位的文件夾不一樣而已,不再贅述。

Nginx搭建反向代理服務(wù)器過程詳解

(2)緩存靜態(tài)資源之樣式文件

Nginx搭建反向代理服務(wù)器過程詳解

(3)緩存靜態(tài)資源之腳本文件

Nginx搭建反向代理服務(wù)器過程詳解

(4)在nginx服務(wù)文件夾中創(chuàng)建靜態(tài)資源文件夾,并要緩存的靜態(tài)文件拷貝進(jìn)去:這里我主要將Web程序中用到的image、css以及js文件拷貝了進(jìn)去;

Nginx搭建反向代理服務(wù)器過程詳解

(5)總結(jié):通過配置靜態(tài)文件的緩存設(shè)置,對于這些靜態(tài)文件的請求可以直接從反向代理服務(wù)器中直接返回,而無需再將這些靜態(tài)資源請求轉(zhuǎn)發(fā)到具體的Web服務(wù)器進(jìn)行處理了,可以提高響應(yīng)速度,減輕真實Web服務(wù)器的負(fù)載壓力。

3.5簡單測試Nginx反向代理實現(xiàn)負(fù)載均衡效果

(1)第一次訪問

時從127.0.0.1:8050處理響應(yīng)返回結(jié)果

(2)第二次訪問

時從127.0.0.1:8060處理響應(yīng)返回結(jié)果

(3)多次訪問

時的截屏:

Nginx搭建反向代理服務(wù)器過程詳解

在本文中,借助了Nginx這個神器簡單地在Windows環(huán)境下搭建了一個反向代理服務(wù),并模擬了一個IIS服務(wù)器集群的負(fù)載均衡效果。從這個DEMO中,我們可以簡單地感受到反向代理為我們所做的事情,并體會負(fù)載均衡是怎么一回事。但是,在目前大多數(shù)的應(yīng)用中,都會將Nginx部署在Linux服務(wù)器中,并且會做一些針對負(fù)載均衡的優(yōu)化配置,這里我們所做的僅僅就是一個小小的使用而已(just修改一下配置文件)。不過,萬丈高樓平地起,前期的小小體會,也會幫助我們向后期的深入學(xué)習(xí)奠定一點點的基礎(chǔ)。

突然在QQ空間里看到了朋友送的禮物,猛然發(fā)現(xiàn)今天居然是我的陽歷生日,好吧,我祝我自己生日快樂,希望自己在未來的日子中能夠做更多的實踐,分享更多的內(nèi)容。當(dāng)然,如果你覺得本文還可以,那也麻煩點個贊,不要吝嗇你的鼠標(biāo)左鍵喲。

nginx 反向代理到百度怎么配置

微信小程序開發(fā):同一個小程序如何通過參數(shù)為多個機(jī)構(gòu)提供服務(wù)?

小程序最直接的就是輕便,不用下載,不用安裝,掃碼就用,用完就走,不占內(nèi)存,用戶體驗非常好;小程序?qū)τ谏碳腋怯卸?,有以下四點優(yōu)勢第一,推廣成本低,用小程序推廣,提高品牌知名度是見效最快,成本最低的好辦法,同時,小程序還可以作為企業(yè)的手機(jī)網(wǎng)站,手機(jī)電商,手機(jī)圖冊等等,方便客戶對企業(yè)的深度了解。第二,免費客戶流量,為門店帶免費來客流量,比如說方圓五公里的微信用戶都能直接快速的找到商家的地址,商家的產(chǎn)品,可以直接在小程序里面,下單,預(yù)約,排號等等,還可以通過一些優(yōu)惠活動吸引很多新顧客。第三,避免抽傭,商家開發(fā)門店小程序可以幫助商家省掉一大筆的平臺抽點費用,客戶都是小程序上慕名而來的,小程序是商家自己的,不需要給任何平臺分成。第四,客戶管理,客戶數(shù)據(jù)都抓在自己的手里,方便自己管理。

以上就是【不看后悔!小程序配置反向代理(squid反向代理配置)】的全部內(nèi)容。

微信:N915888888
(歡迎您前來咨詢)

評論

留下您的評論

發(fā) 表
微信:N915888888

微信:N915888888
(歡迎您前來咨詢)

微信:N915888888
灵武市| 玛沁县| 和田市| 鱼台县| 安平县| 青岛市| 安庆市| 栖霞市| 无锡市| 德安县| 和林格尔县| 钟祥市| 即墨市| 赫章县| 岱山县| 永宁县| 台东县| 鄱阳县| 望城县| 汉阴县| 朝阳市| 邳州市| 屏边| 鄂托克旗| 荣成市| 桑日县| 宜黄县| 夏津县| 西乌珠穆沁旗| 宜城市| 霍邱县| 界首市| 扎鲁特旗| 沾益县| 久治县| 沾益县| 龙口市| 尼勒克县| 大渡口区| 林口县| 龙里县|