概論:
本次主要職能:
1. 後臺跨模塊聯調職能:
a. 單向聯調,登陸入口跟公共模塊提供支付寶接口聯調
b. 雙向聯調,業務線跟評論線接口聯調
2. 開發職能:
a. 受權模塊完整受權流程
b. 我的中心模塊開發
c. 跟評論模塊相關的全部業務接口及MVC接口
主要經驗點:
1. 開發習慣經驗點:
a. 金融雲開發環境下,經過日誌迅速定位問題。本次開發跟以往開發的不一樣之處在於多了一套金融雲的部署環境,此環境下 Service 層並不能用 debug 模式調試錯誤,因此日誌的完整性和精確性成爲快速定位問題的關鍵。從這一點來看,日誌代碼的品質已然已成爲不亞於註釋代碼重要性的重要一環。
b. 嚴重依賴外部的開發環境下,須要全面模擬外部數據。本次涉及的開發點多數並不屬於本地聯調類型,在模擬數據以外主要依賴外部數據傳入,針對此類型的開發模式,外部接口屬於不可控因素,咱們惟一可控的是本身的代碼,那麼此次的一大重要經驗點就是開發的時候,針對外部接口儘量模擬出全部的數據傳入可能,包括:異常,空值,值異常,值不全等;
2. 工具使用經驗點:
a. sofa 使用經驗。本次是第一次項目中使用 sofa 環境,最頭疼的是 sofa 調用不通,總結遇到過的調用不通的各類狀況:
1. 注意代理軟件的使用;
2. 多項目同時啓動的狀況下,注意端口是否會被佔用;
3. 本地開發的狀況下,注意模式設置爲 TEST ;
4. 兩個項目啓動可能會有延時,注意所有啓動完畢以後再調用;
5. sofa配置文件命名的規範性等等;
3. 團隊配合經驗點:
a. 若是存在團隊夥伴依賴本身接口的狀況,那麼須要在第一時間定義好本身的接口,包括入參跟出參,而後模擬一份數據在裏面,以避免耽誤別人的開發進程;
b. 若是存在須要調用團隊夥伴的接口狀況,那麼也要提早溝通,約定什麼時候提供模擬數據的接口跟完整的接口;
c. 若是本身時間容許的話,最好提供一份接口文檔,能夠明晰展現接口詳情,而且節省交互成本;
附一:下次項目改進點:
1. 在測試類以外,能夠寫一套簡單的測試 MVC ,能夠快速獲取接口訪問結果;
2. 功能點在開發之初仔細考慮流程邏輯跟日誌點;
附二:其餘問題:
1. 環境搭建;工欲善其事必先利其器,本次開發過程當中受到環境問題的困擾;
附三:坑點記錄:
1. 跨域
2. 分佈式 session
3. session 重複寫入
4. 白名單處理