1. 程式人生 > >nginx介紹 - 部署到linux中

nginx介紹 - 部署到linux中

查找 領導 瀏覽器 devel .html install sta 命令 pcre

前言:

  tomcat理論並發處理能力, 大概500左右吧, 即使通過一些優化, 能提升一點, 但是, 並不能達到質變, 最多漲幾百. 對於非互聯網項目, 確實夠用了. 在企業中, 如果要達到500並發量, 首先你得有超過500個人吧, 罒ω罒, 其次, 就算你超過500人, 同時訪問的可能性還是很低的. 但是對於互聯網項目, 500並發, 確實低了點.

  如果想要提高並發量, 是不是可以換一個服務器, 或者說, 在tomcat集群前面, 加一個牛B的可接收高並發的服務器, 然後讓這個服務器, 分配到集群中的tomcat中去, 讓他當一回領導, 來分配工作任務給不同的tomcat. 就像這樣:

技術分享圖片

如果有1200個並發, 對於單個tomcat來說, 出現超負荷工作的情況, 就可以大大避免. 以前要1打1200, 現在有了兩個夥伴, 就可以3打1200了, 平均下來, 變成1打400了, 沒問題的啊, 打得過, 是把. 1200並發, 對於nginx, 可以說是遊刃有余, 因為他的並發處理能力, 能達到5w左右. 隨著版本的更新, 這個是不是更高了, 那就不得而知了. 只能說, 更牛B了.

nginx 簡介

一. 下載地址: 

  http://nginx.org/en/download.html

二. 安裝

  java服務器, 一般都選擇linux, 所以, nginx我也裝在linux環境中.

1. 環境準備

因為nginx是c語言寫的, 所以, 要安裝gcc環境

yum install gcc-c++

nginx的http模塊使用pcre來解析正則表達式, so, 得裝

yum install -y pcre pcre-devel

nginx使用zlib對http包的內容進行gzip, so, 得裝

yum install -y zlib zlib-devel

nginx不僅支持http協議, 還支持https協議, so, 得裝

yum install -y openssl openssl-devel

2. 安裝

解壓

tar -zxvf nginx-1.12.2.tar.gz -C /usr/java

看一下, 解壓後的目錄

技術分享圖片

創建文件夾

mkdir -p /var/temp/nginx

技術分享圖片

這個目錄, 在一會configure命令執行的時候, 有用, 當然, 在執行完configure後, 再創建這個目錄, 也是可以的.

configure 命令: (有點長, 不過沒關系啊)

./configure --prefix=/usr/local/nginx --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock 
--error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_gzip_static_module --http-client-body-temp-path=/var/temp/nginx/client --http-proxy-temp-path=/var/temp/nginx/proxy --http-fastcgi-temp-path=/var/temp/nginx/fastcgi --http-uwsgi-temp-path=/var/temp/nginx/uwsgi --http-scgi-temp-path=/var/temp/nginx/scgi

接下來執行make指令

make

等到完成後, 繼續執行

make install

執行完之後, 切換到 /usr/local/nginx 目錄看一下

cd /usr/local/nginx

技術分享圖片

3. 啟動nginx

在 /usr/local/nginx 目錄下執行命令

sbin/nginx

這時候, 看到控制臺沒有任何消息顯示, 仿佛沒執行過一樣, 這時候, 可以查詢一下, 是否真的跑起來了

ps aux|grep nginx

技術分享圖片

發現這裏有三條信息, 前兩條是的, 第三條是執行ps命令出現的.

既然有啟動, 那自然就有關閉了.

./nginx -s quit

執行此條命令需要在 sbin 目錄中.

如果我在配置文件中, 加入了一臺服務器配置信息, 這時候, 如果我要關閉nginx, 在打開nginx, 體驗是不是感覺不太好啊, 有沒有刷新的指令呢?

刷新指令來了:

 ./nginx -s reload

同樣的, 此條命令, 需要在sbin目錄中執行.

問題: 非得到sbin中去執行才行麽, 我安裝之後, 時間久了, 忘記目錄在哪裏了, 咋搞? 那個小笨笨記著麽?

不需要這麽做的. 可以使用 whereis 命令, 進行查找就行了

技術分享圖片

直接拿到路徑, cd進去, 就行了

三. 驗證

跑起來之後, 有沒有辦法, 來直觀的驗證一下, 是否真的跑起來了?

由於linux, 我跑的虛擬機, 所以, 我在windows下, 使用谷歌瀏覽器, 直接輸入linux的ip, 看看

技術分享圖片

這下很直觀了吧.

那我想問一下, 這個現實的內容, 應該是個html文件吧, 這個html文件在哪裏呢? 又是在哪裏配置的呢?

nginx介紹 - 部署到linux中