1. 程式人生 > >Others-接口集成方式

Others-接口集成方式

font 設備 錯誤記錄 相關 連鎖 接口 一段時間 span mil

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-接口集成方式