使用伺服器自帶的/etc/logrotate
配置檔案:
/etc/logrotate.d/nginx
比如nginx:
/usr/local/nginx/logs/access.log {
rotate 3
compress
delaycompress
daily
dateext
ifempty
maxage 3
sharedscripts
postrotate
/usr/bin/kill -usr1 `cat /var/run/nginx.pid`
endscript
}
<a href="http://blog.csdn.net/iiisan/article/details/1180419">http://blog.csdn.net/iiisan/article/details/1180419</a>
注意這裡的postrotate,發送一個usr1信号給nginx,這樣nginx收到這個信号就會重新擷取新的accesslog檔案的句柄了。否則nginx持有的檔案句柄有可能是錯誤的。
fastcgi_param release 1可以設定下
來區分是開發環境還是線上環境
代碼中可以使用$_server[‘release’]擷取
1 擷取機器記憶體
2 看每個php-fpm會占用多少記憶體,計算可以開多少個php-fpm
3 看每個php程序會占用多少時間
4 計算每秒一個php-fpm會處理多少請求
5 可以計算出單個機器可以處理多少請求
nginx的access_log必須設定off才會停止
如果什麼都沒有設定,它還是會記錄access_log
2.6.32比以前的版本對系統的穩定和性能提升有指數級的優化。是以建議低版本都更新到這個版本以上
問題:
echo a|xarg echo b
這樣會傳回b a
要想傳回a b就要這樣設定
echo a|xarg –i echo {} b
xarg就會代替大括号
對于前端有suggest的功能
千萬不要監聽onchange事件,當輸入框輸入一個鍵的時候就調用一次接口,這樣對後端壓力會很大。
應該使用settimeout或者setintval之類的方式,定期判斷輸入框是否有變化,然後再決定是否調用接口。
設定和cpu核數一樣
并且還需要設定nginx_worker_cpu_affinity
這裡有詳細的文章參考:
<a href="http://www.1990y.com/nginx-worker-process-affinity/comment-page-1/#comment-4973">http://www.1990y.com/nginx-worker-process-affinity/comment-page-1/#comment-4973</a>
其中nginx_worker_cpu_affinity如果不設定的話就是讓計算機自己判斷,其實效率和一般的也沒有什麼大的差別
http協定并沒有限制url長度
php沒有限制url長度
一般浏覽器限制url長度為2000位元組
apache限制url為8000位元組,在limitrequestline中設定
nginx對header的限制為large_client_header_buffers