<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          高性能服務(wù)器Nginx(一)------簡介與安裝

          共 3995字,需瀏覽 8分鐘

           ·

          2021-05-14 21:12

          根據(jù)某權(quán)威網(wǎng)站統(tǒng)計:差不多世界上每3個網(wǎng)站中就有1個使用Nginx!??!

          所以作為一個軟件開發(fā)人員,如果你還不會使用Nginx,那是極其可怕的,不過幸好,你看到了這篇文章,可樂將會帶你慢慢解開 Nginx 神秘的面紗。

          說到 Nginx ,如果了解一點的話,可能大家最先想到的就是其負(fù)載均衡以及反向代理的功能。沒錯,這也是當(dāng)前使用 Nginx 最頻繁的兩個功能,但是 Nginx 可不僅僅只有這兩個功能,其作用還是挺大的。

          1、Nginx 的簡介

          Nginx 是由俄羅斯人 Igor Sysoev 設(shè)計開發(fā)的,開發(fā)工作從2002 年開始,第一次公開發(fā)布在 2004 年 10 月 4 日。

          官方網(wǎng)站為:http://nginx.org/ 。它是一款免費開源的高性能 HTTP 代理服務(wù)器及反向代理服務(wù)器(Reverse Proxy)產(chǎn)品,同時它還可以提供 IMAP/POP3 郵件代理服務(wù)等功能。它高并發(fā)性能很好,官方測試能夠支撐 5 萬的并發(fā)量;運行時內(nèi)存和 CPU 占用率低,配置簡單,容易上手,而且運行非常穩(wěn)定。

          2、Nginx 的常用功能

          其實 Nginx 的功能特別多,這里我只介紹幾個常用的功能,具體的大家可以參考官網(wǎng)介紹。

          ①、反向代理

          這是 Nginx 服務(wù)器作為 WEB 服務(wù)器的主要功能之一,客戶端向服務(wù)器發(fā)送請求時,會首先經(jīng)過 Nginx 服務(wù)器,由服務(wù)器將請求分發(fā)到相應(yīng)的 WEB 服務(wù)器。正向代理是代理客戶端,而反向代理則是代理服務(wù)器,Nginx 在提供反向代理服務(wù)方面,通過使用正則表達(dá)式進(jìn)行相關(guān)配置,采取不同的轉(zhuǎn)發(fā)策略,配置相當(dāng)靈活,而且在配置后端轉(zhuǎn)發(fā)請求時,完全不用關(guān)心網(wǎng)絡(luò)環(huán)境如何,可以指定任意的IP地址和端口號,或其他類型的連接、請求等。

          ②、負(fù)載均衡

          這也是 Nginx 最常用的功能之一,負(fù)載均衡,一方面是將單一的重負(fù)載分擔(dān)到多個網(wǎng)絡(luò)節(jié)點上做并行處理,每個節(jié)點處理結(jié)束后將結(jié)果匯總返回給用戶,這樣可以大幅度提高網(wǎng)絡(luò)系統(tǒng)的處理能力;另一方面將大量的前端并發(fā)請求或數(shù)據(jù)流量分擔(dān)到多個后端網(wǎng)絡(luò)節(jié)點分別處理,這樣可以有效減少前端用戶等待相應(yīng)的時間。而 Nginx 負(fù)載均衡都是屬于后一方面,主要是對大量前端訪問或流量進(jìn)行分流,已保證前端用戶訪問效率,并可以減少后端服務(wù)器處理壓力。

          ③、Web 緩存

          在很多優(yōu)秀的網(wǎng)站中,Nginx 可以作為前置緩存服務(wù)器,它被用于緩存前端請求,從而提高 Web服務(wù)器的性能。Nginx 會對用戶已經(jīng)訪問過的內(nèi)容在服務(wù)器本地建立副本,這樣在一段時間內(nèi)再次訪問該數(shù)據(jù),就不需要通過 Nginx 服務(wù)器向后端發(fā)出請求。減輕網(wǎng)絡(luò)擁堵,減小數(shù)據(jù)傳輸延時,提高用戶訪問速度。

          3、Nginx 安裝

          關(guān)于 Nginx 的安裝,分為在 Windows 平臺和 Linux 平臺安裝,Windows 版本的 Nginx 服務(wù)器在效率上要比 Linux 版本的 Nginx 服務(wù)器差一些,而且實際使用的一般都是 Linux 平臺的 Nginx 服務(wù)器。所以后期我們介紹時也會以 Linux 版本的為主。

          ①、下載地址

          Nginx 下載地址:http://nginx.org/en/download.html

            開發(fā)版本主要用于 Nginx 軟件項目的研發(fā),穩(wěn)定版本說明可以作為 Web 服務(wù)器投入商業(yè)應(yīng)用。這里我們選擇當(dāng)前穩(wěn)定版本:nginx-1.14.0

          ②、Windows 版本安裝

          我們將上一步下載的 nginx-1.14.0.zip 文件解壓到當(dāng)前目錄。

            解壓目錄如下:

            下面對這個目錄下的主要文件夾進(jìn)行介紹:

          1、conf 目錄:存放 Nginx 的主要配置文件,很多功能實現(xiàn)都是通過配置該目錄下的 nginx.conf 文件,后面我們會詳細(xì)介紹。

          2、docs 目錄:存放 Nginx 服務(wù)器的主要文檔資料,包括 Nginx 服務(wù)器的 LICENSE、OpenSSL 的 LICENSE 、PCRE 的 LICENSE 以及 zlib 的 LICENSE ,還包括本版本的 Nginx服務(wù)器升級的版本變更說明,以及 README 文檔。

          3、html 目錄:存放了兩個后綴名為 .html 的靜態(tài)網(wǎng)頁文件,這兩個文件與 Nginx 服務(wù)器的運行相關(guān)。

          4、logs 目錄:存放 Nginx 服務(wù)器運行的日志文件。

          5、nginx.exe:啟動 Nginx 服務(wù)器的exe文件,如果 conf 目錄下的 nginx.conf 文件配置正確的話,通過該文件即可啟動 Nginx 服務(wù)器。

          一、啟動 nginx

          雙擊解壓之后目錄中的 nginx.exe 文件,出現(xiàn)一閃而過的畫面,則啟動成功。

          然后在瀏覽器中輸入 http://localhost 或者 http://localhost:80 出現(xiàn)如下界面即啟動成功。

          image.png

          ps:該頁面即是上面解壓目錄中 html 目錄下的 index.html 文件。

          二、關(guān)閉 nginx

          進(jìn)入到解壓之后的目錄,輸入如下命令:

          nginx.exe -s stop

          image.png

          或者也可以打開任務(wù)管理器,找到 nginx 的進(jìn)程,直接右鍵結(jié)束。

          ③、Linux 版本安裝

          選擇的 Linux 系統(tǒng)為 CentOS6.8。

          一、安裝 nginx 環(huán)境

          1 yum install gcc-c++
          2 yum install -y pcre pcre-devel
          3 yum install -y zlib zlib-devel
          4 yum install -y openssl openssl-devel

          對于 gcc,因為安裝nginx需要先將官網(wǎng)下載的源碼進(jìn)行編譯,編譯依賴gcc環(huán)境,如果沒有g(shù)cc環(huán)境的話,需要安裝gcc。

          對于 pcre,prce(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正則表達(dá)式庫。nginx的http模塊使用pcre來解析正則表達(dá)式,所以需要在linux上安裝pcre庫。

          對于 zlib,zlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內(nèi)容進(jìn)行g(shù)zip,所以需要在linux上安裝zlib庫。

          對于 openssl,OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協(xié)議,并提供豐富的應(yīng)用程序供測試或其它目的使用。nginx不僅支持http協(xié)議,還支持https(即在ssl協(xié)議上傳輸http),所以需要在linux安裝openssl庫。

          二、編譯安裝

          首先將下載的 nginx-1.14.0.tar.gz 文件復(fù)制到 Linux 系統(tǒng)中,然后解壓:

          tar -zxvf nginx-1.14.0.tar.gz

          接著進(jìn)入到解壓之后的目錄,進(jìn)行編譯安裝。

          1 ./configure --prefix=/usr/local/nginx
          2 make
          3 make install

          注意:指定 /usr/local/nginx 為nginx 服務(wù)安裝的目錄。

          三、啟動 nginx

          進(jìn)入到 /usr/local/nginx 目錄,文件目錄顯示如下:

          image.png

          接著我們進(jìn)入到 sbin 目錄,通過如下命令啟動 nginx:

          ./nginx

          當(dāng)然你也可以配置環(huán)境命令,這樣在任意目錄都能啟動 nginx。

          image.png

          Linux 沒有消息就好消息,不提示任何信息說明啟動成功。

          或者也可以輸入如下命令,查看 nginx 是否有服務(wù)正在運行:

          ps -ef | grep nginx

          然后我們在瀏覽器輸入Linux系統(tǒng)的IP地址,出現(xiàn)windows安裝成功的界面即可。


          四、關(guān)閉 nginx

          有兩種方式:

          方式1:快速停止

          cd /usr/local/nginx/sbin
          2 ./nginx -s stop

          此方式相當(dāng)于先查出nginx進(jìn)程id再使用kill命令強制殺掉進(jìn)程。不太友好。

          方式2:平緩?fù)V?/p>

          cd /usr/local/nginx/sbin
          2 ./nginx -s quit

          此方式是指允許 nginx 服務(wù)將當(dāng)前正在處理的網(wǎng)絡(luò)請求處理完成,但不在接收新的請求,之后關(guān)閉連接,停止工作。

          五、重啟 nginx

          方式1:先停止再啟動

          1 ./nginx -s quit
          2 ./nginx

          相當(dāng)于先執(zhí)行停止命令再執(zhí)行啟動命令。

          方式2:重新加載配置文件

          1 ./nginx -s reload

          通常我們使用nginx修改最多的便是其配置文件 nginx.conf。修改之后想要讓配置文件生效而不用重啟 nginx,便可以使用此命令。

          六、檢測配置文件語法是否正確

          方式1:通過如下命令,指定需要檢查的配置文件

          nginx -t -c  /usr/local/nginx/conf/nginx.conf

          方式2:通過如下命令,不加 -c 參數(shù),默認(rèn)檢測nginx.conf 配置文件。

          nginx -t 
          image.png


          瀏覽 43
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  大香蕉东京热 | 国产日韩亚洲欧美精品在线播放 | 国产伦精品一区二区三区最新章节 | 东京热成人AV无码 | 欧美超碰在线 |