同步互動中的網路問題
阿新 • • 發佈:2018-11-08
同步互動:傳送一個請求,等待返回,然後再發送下一個請求;
同步互動一定要考慮網路的影響;
舉個我工作中遇到的一個問題:
1.業務場景,在易招贏列表中採集一個名單,採集完會呼叫同步介面,同步到商管家的客戶列表;
2.出現的問題,有使用者反饋採集完後,在易招贏採集完後,沒有同步到商管家的客戶列表;
3.問題排查,看日誌顯示,使用者採集後,沒有呼叫同步介面;
有同事認為是採集後馬上在前端按返回鍵;
我進行了相應操作,並不會出現問題,並進行下面的實驗:
開啟fiddler工具,當我點選採集按鈕後,此時斷開網路,發現和日誌中的記錄一致,可以斷定是由於網路原因造成的問題;
4.問題解決,後臺進行處理,2分鐘內發現沒有同步的資料,進行定時同步處理;
知識擴充套件:
非同步:傳送一個請求,不等待返回,隨時可以再發送下一個請求;
同步可以避免出現死鎖,讀髒資料的發生,一般共享某一資源的時候用,如果每個人都有修改許可權,同時修改一個檔案,有可能使一個人讀取另一個人已經刪除的內容,就會出錯,同步就會按順序來修改。
非同步則是可以提高效率了,現在cpu都是雙核,四核,非同步處理的話可以同時做多項工作,當然必須保證是可以併發處理的。
哪些情況建議使用同步互動呢?比如銀行的轉賬系統,對資料庫的儲存操作等等,都會使用同步互動操作,其餘情況都優先使用非同步互動。