天天看點

項目的經驗教訓(随時補充)

項目的經驗教訓:

01.測試環境與開發環境的網絡一定要分開;

02.資料的一緻性問題(主要是前台資料庫和背景資料庫;要根據資料自身的特性進行分類,”重要資料“采用回報機制(注:定期核對機制);”普通資料或者大資料量資料“采用機制無回報(注:1.對于有狀态的資料:采用雙通道保證可靠性,消息體上要有“時間戳”來防止舊資料覆寫新資料的問題;2.對于增量無狀态的資料:需要采用單通道加定期有核對機制來保證可靠性);

03.源碼版本管理,現網源碼版本要一緻;

04.網管監控(重點:包括網絡和主機參數等)、服務監控好提前考慮(重點:包括服務是否可用;以及服務内部涉及到的中間環節,例如:1.“中間表和消息隊列”要能監控到“大小與存在與否”;2.對于服務内部的子產品或主件之間的遠端調用(TCP/RPC)要有逾時監控等);

05.伺服器主機核心參數和網絡參數調優;

06.伺服器的主備和叢集方案--可靠性方面;

07.系統錯誤定位方法;

08.性能測試一定要先做;

09.資源和資産管理表格一定要做好,并即時更新;

10.人際關系一定要處理好;

11.前期架構設計非常重要,不要盲目的采用新技術;

12.不要做大而全的東西,首先滿足基本要求;

13.一定充分聽取客戶的意見,但也不能完全按照客戶要求;

14.系統和應用的日志一定要處理好,例如:日志分割和日志級别,日志格式等;

15.對發生的問題及時進行總結,進行品質回述,而不是追究責任人,并要形成FAQ;

16.對于日常維護和排錯編寫的腳本及時總結,并更新到配置庫;

17.開發要将基本回歸用例自動化,減少重複性勞動;

18.代碼Review最少要做到其他人了解基本邏輯;

19.工作之前一定要有計劃,計劃一旦确定不易更改,上司者切記随心所欲;

20.資料的存儲方式:分布式存儲需要采用定期核對的機制防止資料的不一緻問題的發生;集中式存儲需要考慮集中式資料庫的處理性能問題,即需要響應快,并且能支援高并發;

21.分布式系統中如果用到時間做比較的時候,各個節點之間的系統時間要統一,NTP服務;