nginx的優化(有一定難度)
nginx如果在生產環境中使用必須要經過優化後才能使用
1.增大併發量 2.防止DDOS攻擊 3.報錯頁面優化 4.nginx狀態監控 5.根據系統客戶端不同給出頁面
1.增大併發訪問量
#user nobody;
worker_processes 1; 一共開啟1個程序,必與cpu的核心數一致
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024; 1個程序開啟1024個執行緒
}
以上是配置檔案的開頭,定義了nginx開啟多少程序,以及一個程序開啟多少個執行緒。
程序:一個程式執行的基本單位,獲取一定的計算機資源
執行緒:一個程序的基本單位,使用程序獲取的資源,是CUP排程的基本單位
一個執行緒處理一個使用者請求 因此worker_connections 65536往大寫,但程序數必須是cpu的核心數(cat /proc/cpuinfo看)
但是!linux系統內和限制最大開啟檔案數是1024,所以需要修改核心引數
ulimit -a 檢視
open files (-n) 1024
ulimit -Hn 30000 硬限制:不能超過
ulimit -Sn 30000 軟限制:可以超過
vim /etc/security/limits.conf 永久生效
* soft nofile 30000
* hard nofile 30000
測試 ab -c 10000 -n 10000 http://伺服器ip/
2.防止ddos攻擊
dos攻擊:拒絕服務攻擊,傳送大量請求連線伺服器,佔用伺服器頻寬直到網路資源耗盡無法正常提供服務
ddos攻擊:控制大量機器dos攻擊升級版。
limit_req_zone $binary_remote_addr zone=one:10m rate1r/s; #設定防ddos模組10M空間每個ip每秒只接一個請求
server {
listen 80;
server_name localhost;
limit_req zone=one burst=5; #呼叫(官網上有)
3.報錯頁面優化
防止客戶端訪問拼寫錯誤出現http報錯過於生硬
error_page 404 /404.html;
將改行去註釋並設定個性化提示頁面404 414 403 等等都可以
4.nginx監控模組安裝
./configure --with-http_stub_status_module
make 不要make install
[[email protected] nginx-1.12.2]# cp objs/nginx /usr/local/nginx/sbin/nginx
cp:是否覆蓋"/usr/local/nginx/sbin/nginx"?y
server {
...
location /status{
stub_status on;
allow IP;
}
}
重啟nginx配置
curl http://192.168.4.1/status 即可看到頁面
5根據系統客戶端不同給出頁面
因為windows端和安卓端顯示大小所以一個頁面常做兩個版式
html/index.php html/Android/index.php
這裡配置檔案中加入地址重寫
if ($http_user_agent ~* android) {
rewrite ^/(.*) /Android/$1
}
原理:if匹配包頭資訊中包含android,請求頁面為/10.html,地址重寫:為/Android/10.html
html/目錄下存windows頁面 html/Android/下存android頁面
相關推薦
nginx的優化(有一定難度)
nginx如果在生產環境中使用必須要經過優化後才能使用 1.增大併發量 2.防止DDOS攻擊 3.報錯頁面優化 4.nginx狀態監控 5.根據系統客戶端不同給出頁面 1.增大併發訪問量 #user nobody; worker_processes
hive ---- hive常見查詢語句練習(有一定難度的)
有一定難度的sql語句 -- 1、查詢"01"課程比"02"課程成績高的學生的資訊及課程分數 思路: 關鍵步驟:select * from score l join score r on (l
學生管理系統(有一定問題)
sel let ets upd jdbc except cte int setname package lianjie; import java.sql.Connection;import java.sql.DriverManager;import java.sql.Res
Nginx優化(2)
緩存 文件的 分配 必須 功能 get 讀取文件 首部 pen 配置文件:main配置段http {} 配置指令要以分號結尾,語法格式: directive value1 [value2...]; 支持使用變量: 模塊內置變
vijos 1423 最短路or環(有向圖)
取消 main 必須 測試 主辦方 marker ons eof eap 最佳路線 描述 年久失修的賽道令國際汽聯十分不滿。汽聯命令主辦方立即對賽道進行調整,否則將取消其主辦權。主辦方當然必須馬上開始行動。 賽道測評人員經過了三天三夜的數據采集,
SQL優化(SQL TUNING)之10分鐘完畢億級數據量性能優化(SQL調優)
font 一個 進一步 結束 語句 pop 技術分享 處理 fill 前幾天。一個用戶研發QQ找我,例如以下: 自由的海豚。 16:12:01 島主,我的一條SQL查不出來結果,能幫我看看不? 蘭花島主 16:12:10 多久不出結果? 自由的海豚 16:12:17
對於同一套應用程序如何發布一個體驗版(有部分功能)完整版(有完整功能)
service() () ogr com 完整 fine adk testin generic 最近項目中,先做一個版本給用戶(普通用戶作為體驗使用)。之後再有一個完整功能版。 #define OFFLINE using System; using System.
try catch 小結 , node的回調callback裏不能捕獲異常 , 不能被v8優化(現在能了),
容易 sin ejs called ack tro 崩潰 span 檢查 《深入淺出Nodejs》時,在第四章 - 異步編程中作者樸靈曾提到,異步編程的難點之一是異常處理,書中描述"嘗試對異步方法進行try/catch操作只能捕獲當次事件循環內的異常,對call back執
讀入優化~~~(個人學習筆記)
false == 學習 學習筆記 筆記 scanf ios sca tchar 基本模板:inline int read(){ int x=0,w=1; char ch=0; while(ch<‘0‘ || ch>‘9‘){if(ch==‘-‘)w=-1;ch=
數據庫性能優化之SQL語句優化(轉 java知音)
可能 資源 詳細介紹 有助於 效果 這就是 詳細 分組統計 完全 一、問題的提出 在應用系統開發初期,由於開發數據庫數據比較少,對於查詢SQL語句,復雜視圖的編寫等體會不出SQL語句各種寫法的性能優劣,但是如果將應用系統提交實際應用後,隨著數據庫中數據的增加,系統的
SQL優化(SQL TUNING)之10分鐘完成億級數據量性能優化(SQL調優)
rom 分享 分鐘 jsb tab tex sql調優 emf group 前幾天,一個用戶研發QQ找我,如下: 自由的海豚。 16:12:01 島主,我的一條SQL查不出來結果,能幫我看看不? 蘭花島主 16:12:10 多久不出結果? 自由的海豚 16:
程序員隨筆:使用來自服務器的圖像(有源碼)
程序員 ios開發 移動開發 iOS開發人員 如果您是移動應用程序開發人員,則在某個時間點您需要與後端進行互動。您可能需要做的其中一項任務是從服務器檢索並顯示圖像,或將圖像提交給該服務器。提交圖像時應該使用什麽格式?如何將從服務調用接收的字節轉換為圖像?讓我們將整個堆棧從服務器構建到iOS應用
鏈表結點的刪除(有重復)
逆向 \n fine turn type sizeof eat create else #include<stdio.h> #include<stdlib.h> #define N 9 typedef struct node{ int dat
部署AWStats日誌分析系統與優化(附安裝包)
服務 移動文件 samb cron 訪問權限控制 lam 環境 tab level 介紹 AWStats是使用Perl語言開發的一款開源日誌分析系統,可以分析apache,samba,vsftpd,iis等服務的日誌信息,結合crond等計劃任務,可以對不斷增長的日誌內
記前端項目首屏加載優化(網絡篇)
ade 可靠 roc instant otc loader lock 增加 toc 繼之前的一篇《記前端項目首屏加載優化(打包篇)》之後,這次來講一講我的首屏加載在網絡方面的優化??。 寫在前面 資源加載是一個網站的展示在用戶瀏覽器的必經之路,資源的請求次數和響應時間決
索引原理和SQL優化(轉載待整理)
索引的本質 MySQL官方對索引的定義為:索引(Index)是幫助MySQL高效獲取資料的資料結構。提取句子主幹,就可以得到索引的本質:索引是資料結構。 我們知道,資料庫查詢是資料庫的最主要功能之一。我們都希望查詢資料的速度能儘可能的快,因此資料庫系統的設計者會從查詢演算法的角度進行優化。最
stm32f103串列埠BootLoader(有keil工程)
因為在論壇和官網都沒搜到完全合適的BootLoader,所以自己移植完成了一個BootLoader工程。另外附APP檔案工程,可做實驗。用良心保證,看完後可以做一個成功的實驗。 上位機選用SecureCrt,微控制器用的stm32f103vet6。 首先搞清楚BootLoader過程步驟,程
神經網路優化(初始化權重)
使隱藏層飽和了, 跟之前我們說的輸出層飽和問題相似, 對於輸出層,我們用改進的cost函式,比如cross-entropy, 但是對
【181122】VC++基於MFC的圖片瀏覽器(有多種特效)原始碼
原始碼下載簡介 一個完整的畢業設計+論文+PPT演示,VC++基於MFC的圖片瀏覽器,在進行圖片瀏覽或開啟、關閉、切換的時候都帶有多種特效,實現PCX、BMP、TGA、GIF、JPEG的讀寫顯示,並可以放大、縮孝旋轉、刪除圖片,支援進行圖片的全屏瀏覽、幻燈片播放以及在狀態列顯示圖片資訊等,本
VENAS excel的出力的過程總結。(有模板出力)
需求:將頁面jqGrid內容輸出到Excel 1.獲取jqGrid內容。 1.1 var postData = $("#gridName").getGridParam('data');&n