天天看點

第三方接口的技術難題

涉及到很多第三方接口,那必然會出現一些技術難題。

1.耦合性:

(1)如果第三方接口如果性能出現抖動,那必然會導緻我們核心流程的性能變差。(異步解耦)

(2)如果第三方接口突然更新了,比如說原來隻需要5個入參,現在需要6個入參了,那我們本地系統的多個接口也需要跟着第三方接口的更新而更新,必須配合他的新接口進行測試和部署上線,圍着它轉。(在接口文檔中可以看到有很多新老版接口的說明,第三方接口更新是不可避免的事情)

2.原子性問題:如果第三方接口調用失敗,會導緻我們核心鍊路出現部分失敗問題(分布式事務)

3.資料量過大問題:公司産品有3億的使用者量,每個使用者如果要用我們的産品,都需要進行身份證、銀行卡、人臉識别等資訊的驗證,算起來上十億的資料量該如何存儲也是我們應該考慮的問題?分庫分表?hadoop、hbase?公司的老闆或者營運團隊,每天都需要檢視我們的資料報表吧?如果在有上億資料量的db中運作我們幾百行的大SQL,性能是極低的,更重要的是,會大大消耗我們資料庫伺服器的CPU、磁盤IO、記憶體,會拖垮我們的業務程式的運作,是以我們的大資料團隊才應運而生

4.穩定性:公司内部的系統,所有代碼都在自己公司,你知道如何運作,出現bug的時候可以自己去解決和優化。但是對于第三方接口,我們連他是什麼語言寫的都不知道,更不知道他是如何實作的,更沒有改動代碼的權力。我們的第三方系統,随時可能奔潰或出現bug,導緻說我們去調用它的時候會失敗,那麼我們就需要考慮如何重試了