Others-接口集成方式
1. 異步通信方式可分為不互鎖、半互鎖和全互鎖三種類型:
a.不互鎖方式
主模塊發出請求信號後,不等待接到從模塊的回答信號,而是經過一段時間。確認從模塊已收到請求信號後,便撤消其請求信號;從設備接到請求信號後,在條件允許時發出回答信號,並且經過一段時間,確認主設備已收到回答信號後,自動撤消回答信號。可見通信雙方並無互鎖關系。
b.半互鎖方式
主模塊發出請求信號,待接到從模塊的回答信號後再撤消其請求信號,存在著簡單的互鎖關系:而從模塊發出回答信號後,不等待主模塊回答,在一段時間後便撤消其回答信號,無互鎖關系。故稱半互鎖方式。
c.全互鎖方式
主模塊發出請求信號,待從模塊回答後再撤其請求信號;從模塊發出回答信號,待主模塊獲知後,再撤消其回答信號。故稱全互鎖方式。
2.接口業務邏輯處理步驟:
接口集成過程中需註意以下幾點:
2.1每條記錄需有三個字段:關鍵值/下發標識/結果標識及消息
2.2接口數據與業務處理盡量分離(需判斷接口數據量)
2.3必須遵循握手機制
2.4錯誤記錄的及時反饋及處理
a.若為發送方
1.獲取未下發的記錄(排除已下發成功或是失敗的記錄,若是記錄下發後返回錯誤則需業務人員處理後標記為未下發狀態)
2.調用下遊系統提供的接口
3.若下遊系統無反饋,則下發標識為空,若下遊系統有反饋值,則當前記錄下發標識為X。
同步則立即獲取返回結果,並在數據表中標識當前記錄的結果及消息文本。
異步則後續根據下遊系統的反饋值來判斷當前記錄的執行結果。
b.若為接收方
1.將初始傳入參數進行存儲(歷史記錄)
2.傳入值校驗,是否數據有誤
3.編寫業務處理邏輯
4.執行結果輸出並返回給上遊系統
5.日誌記錄並消息推送相關責任人(錯誤記錄需業務人員及時處理)
3.接口集成過程中出現的各類問題:
a.通訊異常
接口通信過程中出現超時或是其他異常,而導致下遊無返回值,則當前記錄需要重新下發。
b.接口數據量大
多線程處理
數據分批輕量化
接口數據與業務分離,接口中盡量不做業務邏輯處理(接口數據先存儲後處理--需數據準確前提)。
c.接口數據類型
上下遊接口數據類型及字段長度不一致
d.業務處理邏輯
嚴謹:業務前後邏輯需嚴謹,不要出現邊改訂單邊入庫現象。
先後:業務邏輯處理先後順序需謹慎,不要出現物料操作出庫而該物料還未入庫的情況。
邏輯:上下遊系統對業務的理解不一致而導致業務處理邏輯不同。
e.業務異常處理
通知:接口出現異常需要及時告知用戶(特別是後臺處理模式)
處理:接口問題需要及時反饋並處理,特別是財務集成度較高的業務,前端業務錯誤容易對後續業務造成連鎖反應。
日清:異常問題必須日清處理。
f.任意時間點一致
上下遊系統數據在任意某個時間點數據需保持一致,若出現差異,急及時檢查接口握手機制是否符合要求。
上下遊系統數據出現差異都是災難級的,需消耗很大資源去核對數據。
Others-接口集成方式