項目運維問題總結

問題1:情況是這這樣:使用外網在中臺上傳圖片文件,上傳的文件100k以內沒問題,上傳超過了100k,沒有返回(也就是沒有成功)。wKiom1l7QnyTFjzDAABkFw1nosw049.png-wh_50

但是使用內網上傳,不管是多大都沒問題,都能成功。這樣對比下,無非外網比內網多走了一個nginx。

再次復現上面使用外網上傳大圖片不成功的情況,因爲這個中臺是通過一個nginx映射來使外網訪問的。所以同時查看這個nginx報錯的信息:wKioL1l7Q7CDlcV5AAB5MM66OMU104.jpg-wh_50


從上面的報錯很明顯是權限的問題。


解決辦法:1.ps -ef|grep nginx   (看使用的用戶)2.tomcat 各程序的用戶 3.就是/home/ths/nginx/目錄下各目錄的用戶(這裏有時會出現很多nobody用戶)。這幾個用戶要一致,且都有執行權限。然後重啓nginx服務。再用外網上傳大文件,ok了。



問題2:使用filews程序自測,在瀏覽器上上傳文件失敗。沒有返回,就是失敗。(如下圖)wKioL1l7ReqDdwM-AAF_VoTagLc551.png-wh_50

,查看filews程序的日誌文件:wKioL1l7Rmjhm_IrAABWnzWxGm8457.png-wh_50

顯示FDFS文件寫入錯誤。

開始排查問題:首先查看了filews和fdfs的服務和進程,端口都開啓了。查看磁盤還有10%可使用,然後使用fastdfs命令上傳文件測試是否能成功:# /usr/local/bin/fdfs_test /etc/fdfs/client.conf upload /tmp/1.txt

最後測試不成功,返回的是:no space left on  device (磁盤滿了)

wKiom1l7SBKRPCnCAAJeknmoD_I048.png-wh_50


看到報錯,然後就刪除cms,hexinifs等tomcat程序中沒用的日誌。再查看下空間剩餘量,這回是剩餘17%空間,可能開始的10%剩餘空間是虛假的。之後再命令測試,成功。filews瀏覽器上傳文件測試成功。


問題3:有時候訪問中臺出現這種情況,wKioL1l7S7bQ3WyFAAcfXWWtfFY376.png-wh_50


Nginx做反向代理,後端是Tomcat,通過瀏覽器訪問時部分文件加載失敗,提示:

1
ERR_CONTENT_LENGTH_MISMATCH

經檢查原來是Nginx的工作進程對大文件做了緩存,這個緩存在 %nginx%/proxy_temp 目錄下,主進程在讀取緩存的時候由於權限問題而無法訪問,從而導致以上異常。

1、查看Nginx運行進程,確認運行用戶爲ths;

1
ps –ef|grep nginx

2、檢查proxy_temp目錄所屬用戶,設置用戶爲ths。和tomcat用戶一致


3、停止nginx並將nginx目錄權限設置爲“ths

4.重啓











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章