1. 程式人生 > >運維運營一個網站的經驗總結

運維運營一個網站的經驗總結

之前其實總結過很多有關網站運維和運營的經驗,之前的內容可以檢視:
CSDN部落格-運營運維 http://blog.csdn.net/fansunion/article/category/1714547

  這次總結一點,之前沒有提到、考慮不周或者最新的體會。

1.網站開發
   如果是自己開發,選擇自己最熟悉的語言。
   如果處在學習階段,而不是幹大事階段,可以選擇任何一種語言,比如Web開發Java-PHP-DotNet-Python-Nodejs都行。
   如果追求效率,可以用WordPress、ASPCMS、Discusz等開源軟體,如果對介面要求比較高,可以花1000元以內,買套好的模版。

2.運營
   一般的網站運營,關鍵還是內容和流量。

   沒有內容和流量的網站,開發也沒有多大的價值。
   開發和運營都重要,相輔相成。

3.域名
    做好“雙重解析”,帶www和不帶www。
    根據我以前的經驗,是否帶www可能會造成一定的不同,之前用美圖秀秀的頭像上傳雲服務,多了www,總是出問題。

   我的網站FansUnion.cn解析方式,www.fansunion.cn和fansunion.cn都解析到一臺伺服器上,Nginx把www.fansunion.cn重定向到fansunion.cn,也就是說,對外只提供fansunion.cn的訪問。

  而百度不是這樣的,百度是把所有不帶www的訪問,比如baidu.com重定向到http://www.baidu.com/


  具體採用那種策略,看個人情況。

4.穩定性與負載均衡
  Nginx配置真的很有必要,無論是Tomcat還是Apache,由於記憶體不夠等原因,掛掉的頻率遠遠高於Nginx。通過Nginx代理,至少讓使用者可以看到502的提示,直接用Tomcat,掛了就掛了,還以為跑路了呢。
  對於重要的專案,配置多個Tomcat或Apache還是很有必要的,防止一臺掛掉,直接導致服務中斷,影響非常不好。
  多個伺服器的話,還可以實現灰度釋出,不停服務。
  百度、qq、淘寶,都是不能停服的,損失很大的哦。

5.資料備份
  資料庫、圖片檔案、使用者的一切資料,備份都是很有必要的。
  如果有條件,至少做到2個機房或者地區的備份。
  普通專案,至少做到本地多備份一次,比如按天之類的。
  另外,有個地方比較糾結,Windows有“回收站”的概念,只要不手動刪除,還是可以一直保留的,而Linux貌似沒有“回收站”的概念。還好,我度娘了下,要不然又要被網友“呵呵”了。

  Linux回收站在哪裡?
在使用者的HOME目錄下,有個隱藏目錄Trash就是回收站。查看回收站內容,如下命令:ls -lhta ~/.Trash
監控
  參考資料:http://zhidao.baidu.com/link?url=fsRthBj31TQQh1FCB740v8quDaaJDCyLxMrv-5twGXpttnQAfzRMgAiNJDpn_8b7V23garZitZDNDufL8ugZ2GUfIqEVnqBnBDWRvtiiE7W

 疑問:使用rm刪除檔案後,是留在了回收站裡麼?
 媽蛋:ls: 無法訪問/home/whptp/.trash: 沒有那個檔案或目錄,是沒有許可權呢,還是就沒有trash這個資料夾呢?
 印象中,桌面版本的Ubuntu有回收站呀。
 這個問題,日後注意下。

6.網站監控
   監控很重要。
   阿里雲、監控寶、自己寫,都是可行的辦法。
   具體問題,具體對待。
   比如,想具體監控網站的某個業務或服務,可以自己寫個介面,定時去檢測。

7.除錯分析
   一定要及時記錄日誌,檢視日誌。
  日誌至少可以分4種:
  a.Linux之類的系統級的日誌
  b.應用級的日誌,比如Tomcat、Mysql
  c.業務日誌,log4j列印的,重點關注error級別的日hi
  d.操作日誌,使用者操作日誌可以存到資料庫,比如,"小雷FansUnion2015年2月4日發表了一篇文章"。

8.模組化與可配置
  郵件-簡訊-第三方支付之類的第三方服務,最好做成相對獨立的介面,不要和業務繫結的太死。
切換到另外一家,要方便。
  相關配置,要靈活。比如,配置檔案的位置,圖片的儲存位置,要靈活,寫死了,不好部署維護。

  以上是最近的一些體會。

  小雷FansUnion
  2015年2月4日
  湖北-武漢-循禮門