web及效能調優

來源:互聯網
上載者:User

標籤:web及效能調優

                                                    nginx 的效能調優

1 修改CPU的核心數對應的Nginx work進程 這個一般是你CPU核心數的兩倍,方正是倍數,具體要幾倍可看具體硬體設定

2 修改檔案描述符  65536 ulimit -n 永久生效可改/etc/sysctl.conf

3 修改Linux核心的調度演算法    epoll

4 修改串連數  在理論上來講是背景工作處理序數* 串連數 但是,Nginx的理論並發值是65536,所以 。。。。。 你懂得

5 在多少時間之內要達到多少的並發量就緩衝,否則。。。。。。  你懂得

6 (5)的這條規則的前提下,超過並發數量的次數,就緩衝

7 週期性對(5)做檢查

8 設定分頁的buffer 

9 設定存活時間  這是指cline端開啟browser頁面沒有關閉就自動斷開的時間


Nginx的功能還有哪些  

Nginx可以做web 連接埠轉寄  還有就是反向 Proxy  

還能做方向代理的軟體有哪些呢

Nginx 算一個 squid(沒有Nginx那麼好,它既可以做正想代理也可以做反響代理,只是反向 Proxy的功能沒有其他的那麼強大) 算一個  varnish(專門用來做反響代理的) 也算一個


什麼叫反響代理,什麼叫正向 Proxy?

你可以這樣認為就是 client通過internet去訪問伺服器的內容,而此時的服務是在內部網路的,沒有跟外部網路有串連,所以想要訪問到伺服器的內容就必須要通過代理軟體去實現,那怎麼實現代理服務端得指一下誰是他的後端伺服器吧,然後後端伺服器也要知道誰是他的Proxy 伺服器吧,都是這樣子配置的。

正向 Proxy 你就認為你不能上網,代理幫你去上網,然後在把資料返回來給你

反向 Proxy 也是一樣只是,如果他沒有資料他就會去找後端伺服器找資料然後再給用戶端,如果有資料就直接返回


什麼叫CDN呢?CDN即內容分髮網絡。為什麼說CDN可以加速並且可以抵擋DDOS的一些攻擊呢?那就是它的基本原理還是反向 Proxy。反向 Proxy的作用有兩種,一種就說伺服器內容的替身說白了就是冒充伺服器給別人轉寄的內容的,另一種就是可以起到安全防護的作用。怎麼說它就可以起到安全防護的作用呢?那是因為他充當了伺服器的替身,如果你攻擊伺服器,那你真正攻擊的人就是代理,所以是不會公道伺服器的,所以這就起到了安全防護的作用。 

反向 Proxy的作用 保護網站的安全

反向 Proxy的模型有兩種模型,它可以作為內容伺服器的替身,也可以作為內容伺服器叢集的負載平衡器

Nginx做連接埠轉寄相比於其他的軟體有哪些優勢呢

Nginx可以支援較全的Regex 而haproxy也是可以,只是稍微比Nginx稍弱了一些,還有一個是lvs

各個軟體的異同點:

其實這些連接埠轉寄軟體也可以稱之為LB軟體或是工具都行的,因為他們存在的意義就是為瞭解決單點故障而存在的。

Nginx與haproxy是工作在七層中的,haproxy也可以在4層中工作,而LVS只工作在四層,LVS本身就是用來做連接埠轉寄的。

haproxy彌補了Nginx的session跟cookie功能,而且對工作在tcp協議的應用軟體都支援,Nginx呢只是支援email跟http兩個,所以說過濾URL的話用Nginx較好,但是要支援較全的tcp應用軟體的話還是用haproxy,因為haproxy的功能也不弱於Nginx  在連接埠轉寄發麵跟Nginx是不相上下,甚至也可以說優於Nginx ,只是Nginx這款軟體功能有些太過於強大。到現在好像LVS的身影出現出現比較少啊,那好現在就來說說LVS給我們帶來什麼讓人喜悅功能。LVS 跟fastDFS都是我們國人自己開發的,並且現在的好多企業已經在用,前者的名字叫做章文松(博士)後者叫做餘慶(CA)。

抗負載能力強,因為lvs工作方式的只分發請求啥也不管,如果你的某個節點出現故障了,那麼他還是回去按他的調度演算法把請求發給有故障的那一台的,雖然做負載平衡器裡面是最強的,但是不支援Regex和動靜分離。所以keepalive幫LVS做好了準備了,keepalive是一個用來做高可用的軟體,同時帶了健全狀態檢查機制下面就附上Nginx haproxy LVS三個軟體的優缺點

Nginx  工作在七層,但是只支援email和http  Regex最強,沒有cookie和session會話功能,配置型也簡單(低)

haproxy 是彌補了Nginx的缺點,也是工作在七層,基本上都支援所有的應用,支援session會話功能,支援cookie,負載量大,支援動靜分離

LVS 不支援動靜分離和Regex,但是負載量最強,配置性低,工作在四層,因為只做轉寄沒有流量,所以對i/o的影響幾乎為零。


LVS有幾種工作模式呢

LVS-DR:這是什麼意思呢? 就是如果用戶端發送來請求的話,資料不會直接就到realserver那邊,而是先到LVS手上,然後LVS在通過他所謂的DR工作模式和調度演算法去叫一台realserver來直接把資料包回應client,不用把資料再給LVS。這就是負載平衡器與正反向 Proxy不一樣的地方。

LVS-NAT:即網路位址轉譯,這個呢也是跟上面的DR有些類似,只是有一點不同的他的工作模式變了,年成啥樣了呢,它是這樣的:當用戶端發來請求之後,他會根據他的這個調度演算法和工作模式去一台叫realserver回應client,而在回應之前,realserver還有LVS有些事情要先完成才能完成這項叫做NAT的工作模式“工程”,那realserver跟LVS要做什麼事情呢,要做的事情會很多嗎?沒有其實原理也很簡單,跟網路層的ARP協議一樣,只是這裡是把client的IP跟連接埠先轉換成realserver的IP和連接埠,所以做完這件事情之後當然要開啟網關路由了,那網關路由是隨便指的嗎?NO ,網關路由是要指LVS的IP了,因為由它(LVS)給你回應資料的,所以指定網關的IP就是它了。在realserver上的工作已經做完了,接下來就該LVS什麼都不用配置,只是LVS的工作模式是等realserver把資料轉回來之後,就是轉到LVS手上之後,LVS愛沒有把資料直接給client,而是先把之前client請求過來的IP和連接埠轉成VIP(虛擬IP),開始client請求資料的時候不是先把clientIP和連接埠改為realserver的IP和連接埠去跟realserver要資料去了麼,這次要把資料返回給client,也是要經過跟去realserver要資料一樣,只不過返回資料做的動作就不一樣了,返回資料的動作是把改成realserver的IP和連接埠改成VIP(虛擬IP),不知道這樣講解你們時候明白了,這NAT模式真的就有點想正反向 Proxy了。

LVS-TUN:即隧道的方式。 跟NAT不同的一點就是他不用將client的IP和連接埠地址修正。那是怎樣呢?那就是將client的資料包封裝到一個叫做IPtun的包裡面也就是相當於二次封裝,然後就把封裝過後的包通過他的工作模式跟調度演算法來決定要叫那一台realserver直接給client回應  

它的詳細工作流程應該是這樣的  client發送請求,然後LVS-TUN的工作模式就把client發送過來的包通過二次封裝成ip tun的包,然後通過調度演算法發送給realserver 節點,realserver節點就解包之後直接發送給client。  就這樣就完事了


mysql 的效能調優

1 禁用numa

2 修改核心的調度演算法 deadline

3修改啟動指令碼

4 檔案描述符




什麼是fastDFS 

fastDFS架構至少有client tracker  storage 這三個構成,文字對於講it的技術方面來講,只要能理解了,就是好表達。所以有時候追求完美不是錯,但要學會用在哪方面


想完全理解fastDFS這個東西首先你得知道它初衷設計的目的是基於C(客戶機)/S(伺服器)模式。

跟這個有一點相似的FTP服務,FTP這個服務也是基於C/S架構的

fastDFS 就是一個Distributed File System,那它什麼樣的特點呢?分布檔案系統是什麼鬼? 其實就是可以分布在電腦的網路節點上,當然也可以在本地,只是現在大都偏向網路,所以一般說fastDFS都是指他可以在電腦的網路節點上有多個相連。如果你還記得最早由sun公司提出的NFS這個東西,那你理解fastDFS也就沒有難度了。那什麼是NFS呢?NFS是網路檔案系統,也就是用來共用儲存的,只是這個共用的方式是以目錄(或者是說檔案夾又或者說是倉庫都是可以的的)方式共用出去的,而跟他類似的還有一個叫做iscsi,這個也是用來做共用,只是這個共用的方式是以磁碟共用到外面去的。還有一samba也是用來共用目錄的,其實這些服務的配置都是差不多的,就比如像NFS,ISCSI,samba,mysql讀寫分離,mysql主從,差不多都是這樣的。一般會有誰是我的從,我可以讓誰來共用我的資源,指定誰是共用者,誰是要享受我的資源者,還有就是用什麼連接埠啊,差不多的配置都是那樣的。所以所營運方面的配置也沒有太大的難度。

為什麼要共用,什麼時候需要我們共用啊,其實這個你可以通過我們現在好多例子來舉例,方便管理啊,實現資源共用,方便快捷嗎?只要有網路你要給我的東西就未必非得通過隨身碟來傳送是不是。


本文出自 “12556565” 部落格,請務必保留此出處http://12566565.blog.51cto.com/12556565/1915327

web及效能調優

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.