Day44 課堂筆記

Nginx服務(wù)初步說明:

Nginx是目前最流行的靜態(tài)Web服務(wù)軟件

1.nginx介紹

Nginx (“engine x”) 是一個開源的各拷、支持高性能化撕、高并發(fā)的WWW服務(wù)和代理服務(wù)軟件。

它是由俄羅斯人IgorSysoev開發(fā)的岛都,最初被應(yīng)用在俄羅斯的大型網(wǎng)站www.rambler.ru上。

后來作者將源代碼以類BSD許可證的形式開源出來供全球使用。

3 月 11 日棱诱,F(xiàn)5 與 NGINX 宣布了一項最終協(xié)議,根據(jù)該協(xié)議涝动,F(xiàn)5 將收購 NGINX 的所有已發(fā)行股票迈勋,總價值約為 6.7 億美元。

F5 是應(yīng)用交付網(wǎng)絡(luò)(ADN)領(lǐng)域的全球領(lǐng)先廠商醋粟,其解決方案有助于整合不同的技術(shù)靡菇,以便更好地控制基礎(chǔ)架構(gòu),提高應(yīng)用交付和數(shù)據(jù)管理能力米愿,并使用戶能夠通過企業(yè)桌面系統(tǒng)和智能設(shè)備無縫镰官、安全并更快速地接入應(yīng)用。

而 NGINX 最知名產(chǎn)品 Nginx 是互聯(lián)網(wǎng)上最受歡迎的 Web 服務(wù)器之一吗货,NGINX 提供一整套用于開發(fā)和交付現(xiàn)代應(yīng)用的技術(shù)泳唠,同時它也是應(yīng)用交付領(lǐng)域的開源領(lǐng)導(dǎo)者。

收購聲明指出宙搬,此次戰(zhàn)略收購和有機投資笨腥,將確保長期收入和每股盈利增長;F5 和 NGINX 將在所有環(huán)境中實現(xiàn)多云應(yīng)用服務(wù)勇垛,提供開發(fā)人員所需的易用性和靈活性脖母,同時還提供網(wǎng)絡(luò)運營團隊所需的規(guī)模、安全性和可靠性等能力闲孤。

收購?fù)瓿珊笞患叮琋ginx 管理層將加入 F5,現(xiàn)有的辦事處也將繼續(xù)保持開放讼积。為了收購 Nginx肥照,F(xiàn)5 Networks 籌集了 1.03 億美元的資金,投資者中包括高盛勤众、澳洲電信風(fēng)投舆绎、以及新企業(yè)協(xié)會。

鏈接:http://www.reibang.com/p/1f91b3d19608

2.Nginx3大主要功能

1)網(wǎng)頁服務(wù):自身是靜態(tài)Web服務(wù)们颜,

apache,lighttpd,IIS

還支持動態(tài)Web服務(wù)

PHP(fastcgi_pass)

JAVA(proxy_pass)

Python(uwsgi_pass)

==================================

memcache(memcache_pass)

......

2)負載均衡\反向代理

haproxy,lvs,F5,netscaler

只支持http吕朵,現(xiàn)在tcp/udp猎醇。

3)緩存服務(wù)器

squid,varnish

3.特點:

2008冒頭,當(dāng)時Apache老大努溃,Nginx如何超越對手硫嘶。

Apache 43%? ? Nginx 42%

最大特點:靜態(tài)小文件高并發(fā),占用資源少梧税。軟件本身小音半。

企業(yè)面試時需要解答如下Nginx HTTP服務(wù)器的特色及優(yōu)點:

1)支持高并發(fā):能支持幾萬并發(fā)連接(特別是靜態(tài)小文件業(yè)務(wù)環(huán)境)。

2)資源消耗少:在3萬并發(fā)連接下贡蓖,開啟10個Nginx線程消耗不到200MB內(nèi)存曹鸠。

3)可以做HTTP反向代理及加速緩存,即負載均衡功能斥铺,內(nèi)置對RS節(jié)點服務(wù)

器健康檢查功能彻桃,這相當(dāng)于專業(yè)的haproxy軟件或lvs的功能。

具備squid等專業(yè)緩存軟件等的緩存功能晾蜘。

4.Nginx主要應(yīng)用場景:

?1)靜態(tài)Web服務(wù)器:

? ? 使用Nginx運行HTML邻眷、JS、CSS剔交、小圖片等靜態(tài)數(shù)據(jù)(此功能類似lighttpd軟件)肆饶。

?2)配合運行動態(tài)Web服務(wù)器:

? ? Nginx結(jié)合FastCGI運行PHP等動態(tài)程序(例如使用fastcgi_pass方式)。

? Nginx結(jié)合proxy_pass支持Java動態(tài)程序(tomcat/resin服務(wù))岖常。

? Nginx結(jié)合uwsgi_pass支持Python驯镊。

? 3)反向代理/負載均衡

? ? http負載均衡

? 4)做Web緩存服務(wù)器(把文件放入內(nèi)存里)。

學(xué)習(xí)差異化:田忌賽馬

1)學(xué)運維就是差異化竭鞍。

2)Web服務(wù)板惑,高并發(fā)(符合時代需求)。

3)京東超越淘寶(殺出一片天空)偎快。

? 1.全網(wǎng)正品冯乘。

? 2.當(dāng)天即達。

? 3.價格全網(wǎng)最低晒夹。

5.反向代理與負載均衡

代理:海外代購裆馒,微商:代理:代替別人做事。

正向代理:由內(nèi)向外丐怯。 代替 效率低

代替局域網(wǎng)內(nèi)PC喷好,請求外部應(yīng)用服務(wù)。

反向代理:由外向內(nèi) 代替 效率低

代替外部的用戶請求內(nèi)部的應(yīng)用服務(wù)器响逢。

負載均衡:轉(zhuǎn)發(fā)绒窑、效率高

甩手掌柜。

6.為什么Nginx總體性能比Apache高舔亭?

Nginx使用最新的epoll(Linux2.6內(nèi)核)和kqueue(freebsd)異步網(wǎng)絡(luò)I/O模型些膨,而Apache則使用的是傳統(tǒng)的select模型。目前Linux下能夠承受高并發(fā)訪問的Squid钦铺、Memcached軟件都采用的是epoll模型订雾。

Apache則使用的是傳統(tǒng)的select模型,Nginx使用高并發(fā)的epoll模型

select模型:伙伴去宿舍找你,一個一個找矛洞。洼哎。效率低。

epoll模型: 伙伴去宿舍找你沼本,先問宿管大媽噩峦,看看在哪間宿舍斋扰,然后直奔具體宿舍鳍置。效率高。

select模型:小孩撒尿:如果尿尿拉出來凳干,帶著尿尿辫红。

epoll模型: 小孩撒尿:事先告訴所有小孩凭涂,如果要尿尿,你就站出來贴妻。

? ? ? ? ? ? 阿姨就看有沒有人站出來就可以了切油。

7.軟件安裝

Linux系統(tǒng)如何安裝軟件?

1名惩、rpm安裝

簡單 快澎胡。依賴多,解決依賴困難繁瑣娩鹉。

2滤馍、yum安裝 *****

簡單快,自動解決依賴底循。不能選擇軟件版本或軟件存放路徑巢株。

3、編譯安裝(源碼編譯)*****

慢 復(fù)雜 需要GCC編譯器熙涤,可以自定義安裝(版本阁苞、軟件路徑)

4、將源碼制作成rpm,然后放到y(tǒng)um倉庫祠挫,實現(xiàn)yum自動安裝那槽。

一次性慢 復(fù)雜,安裝快等舔,可以自定義安裝(版本骚灸、軟件路徑)

5、二進制安裝

制作RPM YUM倉庫搭建

https://blog.oldboyedu.com/autodeploy-rpm/

互聯(lián)網(wǎng) 就用nginx

linux系統(tǒng)安裝軟件方法:

1)yum install nginx -y(rpm包慌植,自動解決所有依賴軟件)

簡單甚牲,沒法定制义郑。

2)rpm -ivh rpm包(自己解決所有依賴軟件)

簡單,沒法定制丈钙,沒法自動解決所有依賴軟件

3)編譯安裝(c語言)

可以定制非驮,編譯過程復(fù)雜,時間長雏赦。

./configure 配置

make 編譯

make install 安裝

4)利用源碼制作符合企業(yè)需求的rpm軟件包劫笙,放到y(tǒng)um倉庫里,最后yum安裝星岗。

簡單填大,可以隨意定制。

rpm包定制

http://blog.oldboyedu.com/autodeploy-rpm/

yum倉庫搭建

http://blog.oldboyedu.com/autodeploy-yum/

8.Nginx安裝

兩種安裝方法:

yum安裝:

epel源:版本低俏橘。

nginx官方源:版本高允华。

編譯安裝:1、編譯講的多敷矫。2例获、練習(xí)編譯過程

8.1 配置官方源yum安裝

[root@web ~]# vim /etc/yum.repos.d/nginx.repo

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/7/$basearch/

gpgcheck=0

enabled=1

[root@web01 ~]# rpm -qa nginx

nginx-1.16.0-1.el7.ngx.x86_64

[root@web01 ~]# systemctl start nginx

[root@web01 ~]# systemctl enable nginx

[root@web01 ~]# systemctl status nginx

[root@web01 ~]# netstat -lntup|grep nginx

tcp? ? ? ? 0? ? ? 0 0.0.0.0:80? ? ? 0.0.0.0:*? LISTEN? 8509/nginx: master

8.2 編譯安裝(和8.1二選一)

pcre:URL重寫軟件,即實現(xiàn)偽靜態(tài)需要這個軟件

下載:

mkdir -p /server/tools

cd /server/tools

wget http://nginx.org/download/nginx-1.16.0.tar.gz

#安裝依賴曹仗。

yum install pcre pcre-devel -y

yum install openssl openssl-devel -y? #https加密用他榨汤。

#編譯安裝步驟

tar xf nginx-1.16.0.tar.gz

cd nginx-1.16.0/

useradd -s /sbin/nologin www -M

id www

./configure? --user=www --group=www --prefix=/application/nginx-1.16.0/ --with-http_stub_status_module? --with-http_ssl_module --with-pcre

make

make install

ln -s /application/nginx-1.16.0/ /application/nginx

/application/nginx/sbin/nginx

netstat -lntup|grep nginx

注意:

1)每一步結(jié)尾直接echo $?驗證是否正確。返回0代表步驟正確

2)驗證最終的安裝是否正確怎茫。

wget 10.0.0.8

curl 10.0.0.8

#configure參數(shù)的作用

--prefix=PATH? 路徑

--user=USER? ? 用戶

--group=GROUP? 組

--with-pcre? ? 偽靜態(tài)

--with-http_stub_status_module 狀態(tài)

--with-http_ssl_module? ? ? 加密 443

編譯安裝配置:

[root@web02 /application/nginx]# tree

.

├── conf

│?? ├── fastcgi.conf? ? ? ? #和動態(tài)服務(wù)的接口配置參數(shù)收壕,配合php

│?? ├── fastcgi.conf.default

│?? ├── fastcgi_params

│?? ├── fastcgi_params.default

│?? ├── koi-utf

│?? ├── koi-win

│?? ├── mime.types? ? ? ? ? ? #媒體類型

│?? ├── mime.types.default

│?? ├── nginx.conf? ? ? ? ? ? #主配置文件

│?? ├── nginx.conf.default

│?? ├── scgi_params

│?? ├── scgi_params.default? #和動態(tài)服務(wù)的接口配置參數(shù)

│?? ├── uwsgi_params

│?? ├── uwsgi_params.default? #和動態(tài)服務(wù)的接口配置參數(shù),配合Python

│?? └── win-utf

├── fastcgi_temp

├── html? ? ? ? ? ? #默認站點目錄轨蛤。?

│?? ├── 50x.html

│?? └── index.html? #默認的首頁蜜宪,10.0.0.8不指定文件,默認加載index.html首頁祥山。

├── logs

│?? ├── access.log? #訪問日志

│?? ├── error.log? #Nginx錯誤日志圃验。

│?? └── nginx.pid? #進程號對應(yīng)文件。

├── sbin

│?? └── nginx? ? ? #啟動命令缝呕。

yum安裝配置路徑:

[root@web01 ~]# rpm -ql nginx

/etc/logrotate.d/nginx

/etc/nginx? ? ? ? ?

/etc/nginx/conf.d

/etc/nginx/conf.d/default.conf

/etc/nginx/fastcgi_params

/etc/nginx/koi-utf

/etc/nginx/koi-win

/etc/nginx/mime.types

/etc/nginx/modules

/etc/nginx/nginx.conf

/etc/nginx/scgi_params

/etc/nginx/uwsgi_params

/etc/nginx/win-utf

/usr/sbin/nginx

/usr/sbin/nginx-debug

/usr/share/nginx/html

/usr/share/nginx/html/50x.html

/usr/share/nginx/html/index.html

/var/cache/nginx

/var/log/nginx

編譯為主:

[root@web02 /application/nginx/html]# vim index.html

<html>

<head>

<title>老男孩58期</title>

<meta charset="UTF-8">

</head>

<body bgcolor=green>

<br>

<div align=center>

<table border=1>

<tr>

? ? ? ? <td>ID</td>

? ? ? ? <td>NAME</td>

</tr>

<tr>

? ? ? ? <td>001</td>

? ? ? ? <td>項博</td>

</tr>

<tr>

? ? ? ? <td>002</td>

? ? ? ? <td>項伯</td>

</tr>

</table>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末澳窑,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子供常,更是在濱河造成了極大的恐慌摊聋,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件栈暇,死亡現(xiàn)場離奇詭異麻裁,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進店門煎源,熙熙樓的掌柜王于貴愁眉苦臉地迎上來色迂,“玉大人,你說我怎么就攤上這事薪夕〗挪荩” “怎么了赫悄?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵原献,是天一觀的道長。 經(jīng)常有香客問我埂淮,道長姑隅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任倔撞,我火速辦了婚禮讲仰,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘痪蝇。我一直安慰自己鄙陡,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布躏啰。 她就那樣靜靜地躺著趁矾,像睡著了一般。 火紅的嫁衣襯著肌膚如雪给僵。 梳的紋絲不亂的頭發(fā)上毫捣,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天,我揣著相機與錄音帝际,去河邊找鬼蔓同。 笑死,一個胖子當(dāng)著我的面吹牛蹲诀,可吹牛的內(nèi)容都是我干的斑粱。 我是一名探鬼主播,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼脯爪,長吁一口氣:“原來是場噩夢啊……” “哼则北!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起披粟,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤咒锻,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后守屉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體惑艇,經(jīng)...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了滨巴。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片思灌。...
    茶點故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖恭取,靈堂內(nèi)的尸體忽然破棺而出泰偿,到底是詐尸還是另有隱情,我是刑警寧澤蜈垮,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布耗跛,位于F島的核電站,受9級特大地震影響攒发,放射性物質(zhì)發(fā)生泄漏调塌。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一惠猿、第九天 我趴在偏房一處隱蔽的房頂上張望羔砾。 院中可真熱鬧,春花似錦偶妖、人聲如沸姜凄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽态秧。三九已至,卻和暖如春腹缩,著一層夾襖步出監(jiān)牢的瞬間屿聋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工藏鹊, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留润讥,地道東北人。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓盘寡,卻偏偏與公主長得像楚殿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子竿痰,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,507評論 2 359