精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一個地區問題引發的一些列思考

開發 前端
我最近參與了公司的一個新項目,需要通過openapi接口把接入方的數據,比如:企業、訂單、合同、物流等,同步到我們平臺,然后我們平臺給他們提供金融能力。

[[403903]]

本文轉載自微信公眾號「蘇三說技術」,作者蘇三說技術。轉載本文請聯系蘇三說技術公眾號。

前言

我最近參與了公司的一個新項目,需要通過openapi接口把接入方的數據,比如:企業、訂單、合同、物流等,同步到我們平臺,然后我們平臺給他們提供金融能力。

由于我方跟對接方不在同一個城市,為了提高工作效率,雙方進行了多次在線視頻溝通。剛開始比較順利,沒想到在溝通企業信息上傳接口時,接口文檔中有個非常不起眼的企業注冊地id字段,讓我們一下子進入了僵局。

到底是怎么回事呢?

1.地區問題

在我們平臺的企業表中有一個企業注冊地id字段,是必填的,用戶在注冊企業的頁面需要選擇一個地區,作為該企業的注冊地,實際上數據庫保存的是地區的id。

如果該企業注冊成功了,會在企業詳情頁面上展示該地區名稱。當然我們系統的后臺邏輯是先通過地區id到地區表反查出地區名稱,然后在用戶界面中展示出來。

為了跟企業表保持一致,我方在定義接口文檔時,企業注冊地id字段也做成必填了。

當時的情況是這樣的:我方地區表中有id、地區名稱、國標碼、等級等字段,但這里的id,是我方數據庫的主鍵,對接方系統中肯定是沒有的。對接方系統中也有一套地區表,不過id是他們的數據庫id,他們的表中也有地區名稱、國標碼、等級等字段。

所以他們系統內部需要經過一番轉換,才能把我們所需的地區id傳給我們。

1.1 持久化本地地區表

其實這個項目我是中途才加入的,之前在處理別的事情,我加入的時候接口文檔已經定義好了。

我方跟對接方進行第二次在線溝通的時候,雙方一起過接口文檔的細節,包括:接口的作用、每個參數的含義,以及他們是否有值傳過來等等。

其中過到企業信息上傳接口時,接口文檔中有個企業注冊地id字段,對方沒法傳值過來。為了解決這個問題,我方第一版的方案是:

  1. 對接方調用我方地區查詢接口,通過多次分頁查詢,最終能獲取我方所有地區數據,落庫到他們本地的地區表。
  2. 他們在調用我方企業信息上傳接口之前,先查詢本地的地區表,轉換成我方所需要的地區id。

在討論的過程中,對接方覺得他們也是平臺,不應該做這些額外的事情。所以在那次會議中,雙方針對這個問題,誰也沒有說服誰,最終也沒能達成共識。

后來,我思考了一下,確實這個方案太過理想化了,沒有真正站到用戶的角度思考問題,忽略了很多細節。可能跟文檔設計者不對地區表不太熟悉有關系。

1.2 按名稱調用地區查詢接口

那次會議當中,我們這邊的幾位同事,短暫的討論了一下。既然對接方不愿意接受在他們本地持久化地區表,我們就退而求其次,不要求他們持久化了。這時我們這邊有個同事提出,改成按名稱調用地區查詢接口,反查出地區id,具體方案如下:

這個方案表面上看起來沒有問題,但我之前負責過區域相關功能,我知道,就怕出現如下情況:

  • 如果對接方傳的地區名稱不完整,比如:本來是成都市,實際上傳的成都。這樣,我們地區查詢接口,需要做模糊匹配,如果并發調用接口可能影響接口性能。
  • 如果輸入關鍵字北京市,在我們這邊的地區表中,可以找到兩條數據,一條是跟省級別一樣的,另一條是跟市級別一樣的。到底對應哪條數據呢?

所以我當時把這兩個問題拋出來了,不建議使用地區名稱查詢。

1.3 按國標碼調用地區查詢接口

那個同事聽完之后,也覺得用地區名稱查詢有點不靠譜。他馬上修改方案,改成使用地區的國標碼查詢地區id,具體方案如下:

由于當時討論時間非常短,我們沒來得及考慮太多,暫且打算用這套方案。

1.4 企業上傳接口入參傳國標碼

過了一會兒,雙方繼續過接口文檔,重新討論企業信息上傳接口中企業注冊地id字段傳值問題。

他們在調企業信息上傳接口之前,先調一下我們地區查詢接口,查出地區id,入參是國標碼。然后再將這個地區id,在企業信息上傳接口中傳過來。

對接方仔細聽了我們的方案,猶豫了一下,他們覺得沒有必要再調一次地區查詢接口,雙方都使用國標碼不就行了?

他們的想法是:在企業信息上傳接口中,入參由企業注冊地id改成企業注冊地國標碼,由于國標碼是國家統一的唯一編碼,雙方肯定是一樣,能保證數據的一致性。

2.想起了一個問題

說實話,如果你沒接觸過地區功能的話,大部分人可能會同意這套方案的。

但比較巧合的是我之前正好接觸過類似的功能,當時我突然想起了一個問題:雙方數據的一致性如何保證?

我們都知道,由于國家的發展,有些城市可能會改名,比如:襄樊改成了襄陽,另外有時候多個地級市合并成一個市,這樣國標碼會變化,所以國家統計網每年都會調整地區名稱和國標碼。

我方的地區表是兩年之前創建的,數據初始化好之后沒有就更新過。

而對接方不是跟我們在同一時刻初始化的數據,而且他們會定期更新地區數據,這樣就導致了兩邊的數據不一致。如果對接方的業務表單中使用了新加的城市名和國標碼,而這些信息在我方的地區表中沒有,就無法查詢出我方所需的地區id。

這種情況該怎么辦?

2.1 雙方同一時刻更新地區表

顯然上面的問題是一個非常棘手的問題,這時候有些小伙伴可能會說:雙方使用job同一時刻更新地區表,不就能解決問題了?

圖片我不太贊成這種方案,主要原因如下:

  • 我方僅跟這個對接方有個同步執行的job,沒問題。但如果還有其他的對接方,也需要調用企業信息上傳接口,是不是也要整一個job,而且還要求大家都同一時刻執行,耦合性太大了。
  • 如果我方和對接方同時執行job,但萬一有任意一方執行失敗了,也會導致數據不一致的情況。如果恰好這時候對接方在調用企業信息上傳接口,會不會出問題?

2.2 以一方的地區數據為準?

上面的雙方同一時刻更新地區表的方案確實有點不靠譜,但有些讀者可能會問,以一方的地區數據為準,另一方把數據同步過來不就行了。具體方案如下:

這個方案其實跟之前我方給出的第一個方案很相似,已經被對接方拒絕了。站在他們的角度來說,確實沒有必要因為上傳企業信息,而保存我們的地區數據。

說實話,即使他們同意了,這種跨公司跨系統的數據一致性問題,也不好保證,因為如果對接方調用我們的地區接口失敗了,此時,正好在上傳企業信息,是不是也有問題?

我們一下子進入了困境,但為了不影響整體進度,只能先記錄一下問題,然后跳過這個問題,繼續討論其他字段了。

3.如何解決這個問題?

我當天晚上思考了良久,第二天早上,發現跟我們老大的想法不謀而合。得出的結論是,既然存在差異化,沒辦法避免,我們就要從系統設計上接受差異化。在企業信息上傳接口中增加兩個字段:企業注冊地國標碼 和 地區名稱,對接方改成傳入這兩個字段,具體方案如下:

  1. 在我方的企業表中增加地區名稱字段,是非必填的,同時把之前的地區id字段也改成非必填。
  2. 對接方在調用我方企業信息上傳接口時,同時傳入地區國標碼和地區名稱。
  3. 我方企業信息上傳接口中判斷,如果通過國標碼能夠找到地區id,則將地區id寫入db,如果找不到,則將地區名稱寫入db。

我們評估了一下影響范圍,在企業表中的地區字段,只做展示用,沒有修改入口,所以上面的這套方案是可行的。

后來,再次跟對接方在線溝通時,把我們的這套方案告訴他們了,他們非常贊同。

4 總結

雖說這個地區問題,在眾多技術問題中不值得一提。但是我仔細思考了一下,還是有一些寶貴的經驗值得總結一下的,給有需要的小伙伴一個參考。

4.1 要從用戶的角度設計接口

在設計接口文檔時,要真正做到從用戶的角度出發。

尤其是像這種openapi接口,定義的參數應該盡量選擇通用的,大家都認可的參數,避免出現我方定制化的參數,比如:地區id。

盡量減少用戶的復雜度,讓他們調用接口時更簡單一些。

4.2 技術方案要有包容性

技術方案要有包容性,不是非黑即白,需要有柔性的思想。在分布式環境中,如果去一味地追求數據的強一致性,不會有太好的結果。就像高并發下的商品秒殺系統,如果非要用同步方案去實現,系統最終可能會掛掉,更好的方案其實是改成異步隊列處理。

我方和對接方都有地區表,數據很難保證完全一致,我們不要為了一致性而一致性,這樣會適得其反。為了工作能夠順利進行下去,必然有一方要妥協,我的建議是openapi接口方做妥協,這種技術方案才夠通用。

4.3 沒有最好的方案,只有最適合的

我方最后的那個方案,其實并沒有完全解決地區id找不到的問題,但是從業務的角度來看,即使沒有地區id,有地區名稱也是一樣的。很顯然,最后的方案是非常適合我們實際業務場景的。

所以沒有最好的方案,只有最適合業務場景的。

4.4 進行有效的溝通

在跟對接方在線溝通時,不要因為某個問題卡殼了,而一直僵持下去。如果當時沒有好的技術方案,可以先選擇暫時跳過這個問題,而溝通其他的內容。后面我們再私下單獨花時間,仔細思考當時的問題,從而能夠提出更合理的方案。

 

責任編輯:武曉燕 來源: 蘇三說技術
相關推薦

2023-08-01 23:08:07

2013-12-19 09:58:36

移動應用產品市場

2020-02-03 16:03:36

疫情思考

2009-06-25 09:50:32

JSF

2009-08-03 17:47:23

PHP中保持SESSI

2011-11-30 15:57:18

2021-08-08 10:44:33

安卓系統開發者手機廠商

2024-02-28 08:12:25

SSE接口代理

2019-09-17 09:21:01

2018-07-11 14:06:04

數據質量數據治理數據清洗

2017-12-21 07:54:07

2017-09-01 12:48:34

DevSecOps安全運維

2020-07-14 09:23:49

安全運營甲方乙方

2018-06-14 09:35:35

2021-06-10 10:02:19

優化緩存性能

2011-08-01 10:37:29

軟件項目管理

2021-01-14 23:24:38

incaseforma蠕蟲病毒

2020-01-06 13:11:30

技術工具

2013-04-19 10:01:19

jQueryJS

2018-04-12 09:29:56

HTTP服務器問題
點贊
收藏

51CTO技術棧公眾號

97超碰资源站在线观看| 欧美特级黄色片| 成人在线视频中文字幕| 亚洲国产精品一区二区www在线| 国产精品日韩一区二区| 中文字幕亚洲乱码熟女1区2区| 欧美伦理在线视频| 日韩视频免费直播| 777米奇影视第四色| 精品美女在线观看视频在线观看 | 一区二区中文字| 亚洲成av人片在线观看香蕉| 欧美性猛交xxx乱久交| 日本一本在线免费福利| 国产日韩欧美电影| caoporn国产精品免费公开| 天堂网中文字幕| 中文字幕一区二区三区欧美日韩 | 亚洲怡红院在线观看| 精品五月天堂| 欧美一级淫片007| 成年人小视频网站| av资源中文在线| 自拍偷自拍亚洲精品播放| 玛丽玛丽电影原版免费观看1977| 国产黄色一区二区| 美国一区二区三区在线播放| 538国产精品一区二区免费视频| www深夜成人a√在线| 红桃成人av在线播放| 亚洲第一二三四五区| 亚洲一二三av| 黄色精品视频网站| 色综合天天性综合| 免费拍拍拍网站| av大全在线| ●精品国产综合乱码久久久久| 欧美在线日韩精品| 日韩a级作爱片一二三区免费观看| 国产精品中文字幕日韩精品| 国产精品综合网站| 久久国产香蕉视频| 日韩综合小视频| 午夜精品福利电影| 国产一级大片在线观看| 欧美国产精品| 久久综合色影院| 亚洲欧美卡通动漫| 青青草97国产精品麻豆| 在线播放亚洲激情| 国产破处视频在线观看| 成人91在线| 中文字幕精品国产| 国产123在线| 欧美日韩激情| 综合网中文字幕| av在线免费播放网址| 91视频综合| www.亚洲成人| 2018天天弄| 国内精品久久久久久久影视麻豆| 欧美精品午夜视频| 免费在线观看亚洲| 在线观看的日韩av| 97在线观看免费高清| www.国产高清| 蜜桃久久av| 国产日韩欧美电影在线观看| 国产精品嫩草影院桃色| 国内精品久久久久影院色| 91久久精品在线| av免费在线不卡| 成人av在线一区二区| 狠狠爱一区二区三区| 色窝窝无码一区二区三区成人网站| av午夜一区麻豆| 日韩高清dvd| 亚洲搞黄视频| 亚洲精品美腿丝袜| 六月婷婷在线视频| 网友自拍亚洲| 日韩丝袜美女视频| 丰满少妇一区二区三区| av在线不卡顿| 欧美精品在线第一页| 日韩欧美性视频| 日韩不卡免费视频| 91嫩草在线| 青青草免费观看免费视频在线| 久久久久久毛片| 在线看视频不卡| 国产精品偷拍| 日本高清不卡在线观看| 一级黄色高清视频| 久久porn| 亚洲欧美日本日韩| 丝袜情趣国产精品| 免费视频一二三区| 天堂va蜜桃一区二区三区| 国产在线久久久| 五月天激情婷婷| 久久精品在线免费观看| japanese在线播放| 视频二区不卡| 日韩欧美国产不卡| 在线观看福利片| 99免费精品| 欧美重口另类videos人妖| 国产精品一区二区免费视频| 久久综合999| 精品国产一区二区三区在线| 欧美电影免费观看| 亚洲第一页自拍| 日韩激情小视频| 日本在线不卡视频一二三区| 粉嫩av四季av绯色av第一区| 最新97超碰在线| 欧美午夜精品久久久久久人妖| 男插女视频网站| 波多野结衣的一区二区三区 | 丁香花在线电影小说观看| 在线观看免费视频综合| www.美色吧.com| 欧美xxxxx视频| 国产成人精品久久| 四虎永久在线观看| 亚洲男人都懂的| 国产精品自拍视频在线| 免费看av成人| 78m国产成人精品视频| xxxwww在线观看| 亚洲欧洲av在线| 亚洲高清在线免费观看| 香蕉精品久久| 欧美一级片在线播放| 亚洲经典一区二区| 亚洲蜜桃精久久久久久久| 久久久精品高清| 99久久夜色精品国产亚洲96| 国产一区欧美二区三区| 在线观看免费高清完整| 欧美日韩黄视频| 一级二级黄色片| 日本不卡一区二区| 日韩久久精品一区二区三区| 自拍偷自拍亚洲精品被多人伦好爽 | 成人免费公开视频| 亚洲欧美成人一区二区三区| 一级日本黄色片| 欧美一区二区三区久久精品茉莉花 | 999久久欧美人妻一区二区| 国产精品白丝久久av网站| y97精品国产97久久久久久| 在线观看视频中文字幕| 中文一区二区完整视频在线观看| 欧美成人黄色网址| 欧美成免费一区二区视频| 91精品国产综合久久香蕉最新版 | 成人手机在线免费视频| 日韩视频中文| 久久国产精品亚洲va麻豆| 小视频免费在线观看| 亚洲石原莉奈一区二区在线观看| 日韩精品一区二区亚洲av观看| 国产日韩欧美不卡在线| 天堂一区在线观看| 你懂的国产精品| 国产亚洲精品美女久久久m| 美女的胸无遮挡在线观看| 日韩久久午夜影院| 中文字幕精品视频在线观看| 国产精品污网站| 国产三级生活片| 牛牛国产精品| 精品视频一区二区| 色香欲www7777综合网| www.精品av.com| 可以免费看毛片的网站| 日韩欧美一区二区在线| 一本在线免费视频| 国产福利一区在线| 欧美视频免费播放| 婷婷亚洲五月色综合| 国产精品一区二区免费| 欧美舌奴丨vk视频| 伦伦影院午夜日韩欧美限制| 视频二区在线观看| 欧美三级电影网站| 国产一级做a爰片在线看免费| 久久精品男人的天堂| 亚洲制服在线观看| 国产日产高清欧美一区二区三区| 永久免费精品视频网站| www.神马久久| 国产精品偷伦免费视频观看的| 色女人在线视频| 亚洲一区999| 高h放荡受浪受bl| 在线免费观看一区| 久久久久久欧美精品se一二三四| 久久久久亚洲蜜桃| 久久久久亚洲AV成人网人人小说| 日韩成人免费在线| 欧美午夜小视频| 不卡一区综合视频| 国产在线欧美日韩| 国产精品高清一区二区| 日本欧美中文字幕| 色爱综合区网| 色噜噜狠狠狠综合曰曰曰| 天天色综合久久| 日韩美女主播在线视频一区二区三区| 亚洲 欧美 日韩 在线| 亚洲一区二三区| 亚洲综合久久av一区二区三区| 91在线视频播放| 日本中文字幕有码| 韩国精品久久久| wwwwxxxx日韩| 美女被久久久| 干日本少妇首页| 伊人蜜桃色噜噜激情综合| 黄频视频在线观看| 国产亚洲欧美日韩在线观看一区二区| 国产伦精品一区二区三区照片91 | 性孕妇free特大另类| 欧美黑人又粗大| 国产在线一区二区视频| 在线成人一区二区| 久久av少妇| 精品亚洲aⅴ在线观看| 六月婷婷中文字幕| 日韩欧美美女一区二区三区| 国产精品久久久久久久久久久久久久久久 | 十八禁一区二区三区| 精品伦理精品一区| h狠狠躁死你h高h| 日韩一区二区三区视频| 国产美女无遮挡永久免费| 欧美色精品在线视频| 老熟妇一区二区三区啪啪| 日本韩国欧美一区| 无码人妻精品一区二区| 一本色道久久综合亚洲aⅴ蜜桃| 亚欧视频在线观看| 精品毛片网大全| 国产做受高潮漫动| 精品国产乱码久久久久久天美 | 久久精品国产99国产精品| 免费看黄色一级大片| 日本美女视频一区二区| 永久免费的av网站| 精久久久久久久久久久| 一二三级黄色片| 国产在线一区观看| 中文字幕第10页| 懂色中文一区二区在线播放| 天天躁日日躁狠狠躁免费麻豆| 成人一区二区三区视频 | 亚洲精品亚洲人成在线观看| 欧美精品一区在线| 成人羞羞动漫| 亚洲区成人777777精品| 海角社区69精品视频| 欧美午夜性视频| 另类av一区二区| 日本在线观看免费视频| 激情综合色播五月| www.四虎精品| 久久久久久毛片| 国产免费一区二区三区四区| 一区二区三区四区五区视频在线观看| 日本一区二区欧美| 色菇凉天天综合网| 在线观看日韩一区二区| 日韩精品专区在线| 男男激情在线| 日韩日本欧美亚洲| 91九色porn在线资源| 国产精品第100页| 日韩视频一二区| 久久久久免费网| 天天综合国产| 日韩精品 欧美| 久久国产三级精品| 影音先锋人妻啪啪av资源网站| 久久久精品天堂| 老妇女50岁三级| 日韩欧美国产骚| 精品欧美一区二区精品少妇| 日韩精品极品视频| 黄色免费在线观看网站| 91av视频导航| 99re8精品视频在线观看| 精品国产一区二区三区日日嗨| 日韩欧美视频专区| 男人的天堂狠狠干| 精彩视频一区二区| 大又大又粗又硬又爽少妇毛片| 中文字幕在线观看一区二区| 久久久久久少妇| 欧美一级欧美三级| 成人在线观看网站| 国内自拍欧美激情| 91精品网站在线观看| 鲁鲁视频www一区二区| 午夜激情一区| 久久这里只精品| 91亚洲男人天堂| 精品97人妻无码中文永久在线| 欧美亚洲自拍偷拍| 色鬼7777久久| 欧美激情亚洲自拍| 国产高清亚洲| 亚洲精品美女久久7777777| 中文日韩欧美| 一级黄色电影片| 亚洲人精品一区| 影音先锋国产在线| 精品无码久久久久久国产| 黄色羞羞视频在线观看| 91精品国产综合久久香蕉922| 国产精选一区| 亚洲熟妇av一区二区三区| www.66久久| 国产一级理论片| 日韩女优视频免费观看| 国产在线激情视频| 国产日韩欧美中文| 日韩成人精品一区| 性生交免费视频| 日本一区二区视频在线| 久久久久久久久久久久久av| 亚洲成人免费网站| 女同视频在线观看| 成人黄动漫网站免费| 一区二区国产在线| 91欧美一区二区三区| 亚洲欧洲日韩综合一区二区| 中文字幕+乱码+中文| 一本一本久久a久久精品综合小说 一本一本久久a久久精品牛牛影视 | 欧美国产日韩在线观看| 亚洲另类在线观看| 亚洲毛片一区二区| 深夜成人福利| 视频一区视频二区视频三区视频四区国产| 麻豆亚洲精品| 中文字幕av久久爽一区| 欧美日韩专区在线| 日本中文字幕在线看| 成人黄色免费网站在线观看| 91精品秘密在线观看| 国产探花在线观看视频| 亚洲午夜视频在线| 天堂在线资源网| 日本精品视频在线播放| 成人亚洲一区二区| www.色欧美| 亚洲成人免费看| 欧洲成人av| 国产精品午夜视频| 亚洲一本二本| 999精品免费视频| 欧美性少妇18aaaa视频| aaa在线观看| 99r国产精品视频| 国产日韩亚洲欧美精品| 亚洲精品午夜视频| 777午夜精品免费视频| 日本动漫理论片在线观看网站| 国产在线精品一区二区三区| 天堂资源在线中文精品| 四季av中文字幕| 日韩免费看网站| 中文在线а√天堂| 一区二区高清视频| 国产成人一区在线| 中文字幕第四页| 久久久成人av| 日韩激情啪啪| 777一区二区| 午夜视频在线观看一区二区| 国产三级在线免费| 91探花福利精品国产自产在线| 夜夜嗨一区二区| 精品人体无码一区二区三区| 欧美xxxxxxxx| 偷拍中文亚洲欧美动漫| 日韩精品免费一区| 久久九九99视频| 99在线无码精品入口| 秋霞成人午夜鲁丝一区二区三区| 999国产精品999久久久久久| 手机免费看av片| 欧美久久一二区| 天堂中文最新版在线中文| 美女黄色片网站| 久久久久国色av免费看影院| 午夜美女福利视频| 国产精品久久久久久五月尺|