Nginx學習筆記

狂神聲明 : 文章均爲本身的學習筆記 , 轉載必定註明出處 ; 編輯不易 , 防君子不防小人~共勉 ! html

Nginx學習筆記

課程目標

  • 理解反向代理,負載均衡的概念 .
  • 掌握Nginx在Linux下的安裝 , 配置
  • 掌握在項目中使用Nginx反向代理實現負載均衡
  • 瞭解Nginx負載均衡的經常使用配置方案

 反向代理

  • 正向代理
    • 客戶端------代理客戶端------原始服務器
    • 客戶端必需要進行一些特別的設置
    • 問題 : 單個服務器處理客戶端請求能力有限 , 當用戶請求蜂擁而入時 , 會形成服務器忙不過來的局面 , 那如何解決?
    • 解決方案 : 使用多個服務器來共同分擔成千上萬的用戶請求 , 他們提供相同服務 , 對於用戶而言 , 根本感受不到任何差異
  • 反向代理
    • 客戶端------代理服務器-----原始服務器
    • 客戶端不須要進行任何特別的設置

Nginx概念

  • Nginx 是輕量級 , 高性能的web服務器 / 反向代理服務器
  • 實現負載均衡
  • 負載均衡( Load Balance )
    • 將請求/數據 [均勻] 分攤到多個操做單元上執行'
    • 核心 : 均衡的分攤壓力

安裝配置

  • Nginx安裝包 ( windows版 , Linux 版 )
  • 安裝環境準備
    • 服務器 CentOS 7  64位
    • 安裝包 : nginx-1.12.0.tar.gz
    • 下載地址 : http://nginx.org/en/download.html
    • 安裝c++編譯環境 ( yum install gcc-c++ )
  • 安裝配置步驟
    • 安裝模塊依賴庫
      • pcre庫 ( rewrite )
        • yum install pcre*
        • pcre-8.32.tar.gz ( 下載地址: http://www.pcre.org/ )
      • openssl庫 ( ssl )
        • yum install openssl*
        • openssl-fips-2.0.16.tar.gz ( 下載地址: http://www.openssl.org/ )
      • zlib庫 ( gzip )
        • yum install zlib*
        • zlib-1.2.11.tar.gz ( 下載地址 : http://www.zlib.net/ )
    • 安裝 Nginx
      • ./configure
      • make
      • make install
    • 開放80端口
      • /ect/sysconfig/iptables
    • #查看gcc是否安裝
      rpm -qa|grep gcc*
      
      #鏈接上服務器,把資源都導入,安裝環境開始
      #......此處省略重複安裝環境步驟
      
      #配置文件開80端口,重啓iptables
      vim /ect/sysconfig/iptables
      service iptables restart

      啓動Nginxnginx

      • usr/local/nginx/sbin/nginx
    • 訪問Nginx
      • http://服務器ip 
      • 若是訪問成功出現Welcome Nginx就成功了!
  • Nginx經常使用命令
    • 啓動 : usr/local/nginx/sbin/nginx
    • 中止 : usr/local/nginx/sbin/nginx -s stop
    • 重啓 : usr/local/nginx/sbin/nginx -s reload
    • 檢查配置文件 ( nginx.config ) 是否合法 : usr/local/nginx/sbin/nginx -t
  • 注意 :
    • libpcre.so.1 動態庫找不到的處理方案 :
      #查找libpcre.so.1庫在哪
      whereis libpcre.so.1
      
      #軟鏈接過去
      ln -s /usr/local/lib/libpcre.so.1 /lib64/libpcre.so.1

      #查看是否啓動成功
      ps -ef|grep nginx
       

nginx.conf 配置文件

  • /usr/local/nginx/conf/nginx.conf
    • Nginx服務器的基礎配置
  • 文件結構
    • 全局塊
    • events塊
    • http塊
      • 嵌套多個server
      • 配置反向代理功能提供負載均衡支持
    • server塊
      • 配置虛擬主機的相關參數
    • location塊
      • 請求URL過濾 , 正則匹配

項目實現負載均衡

  • 構建反向代理
    • Nginx只處理靜態臺不處理動態內容,動態內容交給後臺Tomcat處理
  • 實現負載均衡
    • 輪詢
    • 熱備
      • bcakup
    • 權重
      • weight
    • IP地址hash
      • ip_hash
      • 解決Tomcat之間session共享
相關文章
相關標籤/搜索