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

一次全量數據對比工具發現問題的過程與思考

開發 開發工具
大數據量驗證,人工無法百分百保證數據準確性,抽樣檢查,94.2%概率發現不了問題。最穩妥的辦法,還是全量對比,讓每條數據,都經過對比規則的檢驗。

如果沒有這次全量數據對比工具,那么也許這個歷史問題會繼續隱藏著,直到發生線上事故才暴露出來,畢竟人工抽樣驗證發現的概率只有「5.8%」

背景是發票系統有18500個電子發票訂單被財務系統駁回了,駁回原因是財務系統上線了全電發票需求,上線后電子發票枚舉被誤刪,無法處理電子發票。需要我們發票系統對這18500電子發票訂單,重新觸發提票,讓發票能正常開出來。也就是,我們需要刷數。刷數是個高危操作,極易引發線上問題。

經驗教訓告訴我們,刷數雖然是一種處理線上問題的方法,但是也特別容易引起二次事故。對于刷數,我們需要像新需求一樣對待,經過完備的需求分析、設計評審、代碼評審。主要考慮以下3點:

  • 刷數范圍,怎么篩選問題數據,評審過濾條件;
  • 刷數程序,怎么修復問題數據,評審代碼邏輯;
  • 驗證方法,怎么驗證修復數據,分析測試場景;

在刷數實施前,群里報備,周知相關方及相關人員。先試刷,驗證無問題后,再全刷,最后驗證問題數據已經得以修復。這一套刷數流程,通過加強前期評審,能很好地預防缺陷,增強刷數成功的信心。但是人工評估可能遺漏場景,可能對真實數據情況把握不全,刷數的關鍵還在于最后的數據驗證。

抽樣驗證還是全量驗證,這是一個問題。抽樣驗證是人工隨機挑幾個數據進行驗證,我們通常傾向于使用抽樣驗證,一是抽樣驗證是一種科學的有效的驗證方法,雖然它存在一定概率的遺漏,但是很多時候是可以接受的風險;二是抽樣驗證也是無奈之舉,找不到辦法進行全量驗證。我們遇到的困難是,數據存在ES中,批量把所有數據查出來很麻煩,也無法直接編寫校驗邏輯,全量驗證似乎是不可能的。

全量驗證有2個思路:

  • 如果能直連庫,那么先提數,再寫程序對比;
  • 如果只能WEB頁面查數,那么使用Python爬蟲提數,再寫程序對比;

后者適用于我們的情況。ES能通過WEB頁面查詢數據,只要是WEB頁面,即使有Cookie,也能爬取到接口數據。F12抓包到查詢接口的URL、Cookie、入參后,使用Python的requests庫可以爬取查詢結果數據:

url = 'http://xxx'
headers = {
    'Cookie': 'xxx',
    'Content-Type': 'application/json'
}
response = request('get', url=url, headers=headers)
result = response.json()

我們使用這種方式,傳入訂單號,查詢到了申請單數據,以便進行對比校驗邏輯。而訂單號,研發打在了日志里,需要下載日志文件后,進行解析,可以使用Python切片:

orders = set()
with open('some.log') as f:
    for line in f.read().splitlines():
        if 'xxx' in line:
            orders.add(line[line.index('orderId='):line.index(',已執行')].replace('orderId=', ''))
print(len(orders))
with open('orders.txt', 'w') as f:
    f.writelines(','.join(orders))

.index可以定位到關鍵詞的索引,然后[:]切片獲取指定內容。

日志解析訂單號+爬蟲獲取申請單+編寫對比校驗邏輯,全量數據對比工具就完成了??墒?8500單,上萬級別數據,要全部對比完,至少要幾個小時。是時候使用多線程了。

多線程第一步,拆解數據,將18500單拆成以100單為一組的列表:

def split_list(lst, size):
    """
    將列表 lst 拆分成每份 size 個元素的子列表,并返回一個包含所有子列表的列表。
    """
    return [lst[i:i + size] for i in range(0, len(lst), size)]

多線程第二步,隊列提數,讓多個線程依次從列表中取出數據,每個線程每次取不同的數據:

import threading

# 待處理的數據列表
data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# 創建鎖對象
lock = threading.Lock()

# 定義線程函數
def process_data():
    global data
    while True:
        # 加鎖
        lock.acquire()
        # 如果列表為空,說明所有數據已被處理完畢,退出循環
        if len(data) == 0:
            lock.release()
            break
        # 取出列表中的第一個數據
        num = data.pop(0)
        # 釋放鎖
        lock.release()
        # 對數據進行處理
        print("Processing data:", num)

# 創建多個線程
threads = []
for i in range(5):
    t = threading.Thread(target=process_data)
    threads.append(t)

# 啟動所有線程
for t in threads:
    t.start()

# 等待所有線程結束
for t in threads:
    t.join()

print("All data processed.")

阻塞隊列是通過加鎖來實現的,每個線程在取數前先加鎖,然后pop(0)取出列表中的第一個數據,再釋放鎖。上述程序修改①data②數據處理邏輯③線程數即可使用。

對比工具使用多線程后,運行時間從小時級別降到了分鐘級別。當天研發本來以為要跑很久,準備第二天再來看,就先撤了。我執著了一下多線程實現,在ChatGPT幫助下,很快就把結果跑出來。趕緊打電話搖人,讓研發回來看問題,研發那時剛到家,掏出鑰匙把門打開。在全量對比前,我們也都做了一輪抽樣驗證,均沒有發現任何問題。18500單全量對比,發現有1064單存在問題,能抽樣發現的概率只有5.8%。

總結,分析這些問題原因:

  • 遺漏了1種數據情況,評估不到位
  • 未考慮到刷數環境影響,在預發環境刷數,上下游環境都是預發,可能跟線上版本不一樣,尤其是做寫操作時,格外需要注意
  • 刷數程序本身缺陷,這個缺陷隱藏在一段用了很多次刷數的歷史代碼里面,不是100%會導致問題

可以發現,大數據量驗證,人工無法百分百保證數據準確性,抽樣檢查,94.2%概率發現不了問題。最穩妥的辦法,還是全量對比,讓每條數據,都經過對比規則的檢驗。

責任編輯:武曉燕 來源: 測試開發剛哥
相關推薦

2018-09-12 09:07:43

服務器數據RAID5

2021-11-23 21:21:07

線上排查服務

2018-12-27 09:09:35

2019-11-04 10:37:53

MongoDB宕機日志

2019-04-15 13:15:12

數據庫MySQL死鎖

2016-06-15 10:08:29

云計算

2015-07-17 10:05:03

面試思考

2022-11-29 21:26:26

跨域配置

2020-05-04 11:04:46

HTTP劫持寬帶

2022-07-13 08:31:18

React問題排查

2020-05-09 16:13:13

網絡安全網絡安全技術周刊

2025-05-15 10:01:22

HBase數據壓縮大數據

2017-09-22 10:16:16

MySQL數據庫用戶數據

2011-08-08 13:31:44

數據分析數據倉庫

2022-09-03 18:29:49

開發技術

2009-03-20 10:58:47

2022-09-14 15:40:03

接口解決

2014-08-01 14:06:45

2022-09-15 10:02:58

測試軟件

2020-01-18 14:11:13

數據庫線程技術
點贊
收藏

51CTO技術棧公眾號

无码人妻精品一区二区三区蜜桃91 | 无码国产精品96久久久久| 仙踪林久久久久久久999| 欧美日韩大陆一区二区| 日本xxxxx18| 免费观看黄一级视频| 国产精品亚洲产品| 在线观看国产91| 亚洲精品乱码久久久久久蜜桃91| 亚洲图片视频小说| 亚洲人亚洲人色久| 亚洲国产日日夜夜| 久久久亚洲综合网站| 中文字幕av网站| 欧美理论在线| 国产视频在线观看一区二区| 性生活免费在线观看| 亚洲卡一卡二| 精品一区二区三区久久| 久久久久久亚洲精品| 成年人在线免费看片| 亚洲专区区免费| 国产高中女学生第一次| 中文亚洲欧美| 日韩视频免费观看高清完整版在线观看| 国产911在线观看| 欧美成人综合在线| 国产亚洲永久域名| 久久激情五月丁香伊人| 天堂在线中文在线| 色视频在线观看| 久久av中文字幕片| 57pao成人国产永久免费| 国精产品视频一二二区| 秋霞综合在线视频| 欧美一个色资源| 青青草综合视频| 91caoporm在线视频| 日本亚洲欧美天堂免费| 国产亚洲欧美视频| 五月天开心婷婷| 波多野结衣久久精品| 亚洲国产综合色| 在线综合视频网站| 成人在线二区| 国产精品888| 国产日韩欧美视频在线| 天干夜夜爽爽日日日日| 色婷婷综合网| 亚洲视频欧美视频| 邪恶网站在线观看| 国产精品一区二区av影院萌芽| 久久人人超碰精品| 国产精品白丝jk白祙| 一级做a爰片久久毛片| 欧美日本一区二区高清播放视频| 精品久久久久99| 在线观看免费不卡av| 日韩成人动漫| 日韩毛片在线免费观看| 茄子视频成人在线观看 | 国产白丝一区二区三区| 色成人免费网站| 久久这里都是精品| 国产精品免费一区二区三区| 99国产揄拍国产精品| 久久99深爱久久99精品| 国产精品免费久久久久影院| 婷婷激情五月综合| 日韩国产精品久久久| 人体精品一二三区| www.av免费| 66国产精品| 中文字幕亚洲无线码a| 你懂得视频在线观看| 欧美日韩中字| 视频直播国产精品| 涩视频在线观看| 国产情侣一区二区三区| 在线观看91视频| 九色91popny| 国产盗摄在线视频网站| 亚洲一区成人在线| 欧洲精品一区二区三区久久| 白浆视频在线观看| 亚洲视频中文字幕| 国产精品88久久久久久妇女| 国外av在线| 国产激情一区二区三区桃花岛亚洲| 91青草视频久久| 成人福利小视频| 蜜桃视频一区二区三区 | 国产精品一区二区三区四区在线观看 | 最近在线中文字幕| 91精品办公室少妇高潮对白| 亚洲高清免费观看高清完整版在线观看| 亚洲最大av网| 免费av一级片| 久久综合视频网| 日韩欧美精品一区二区三区经典| 五月婷中文字幕| 国产日韩欧美a| 中文字幕一区二区中文字幕 | 国产亚洲综合色| 亚洲影院高清在线| 蜜臀av免费在线观看| 麻豆精品精品国产自在97香蕉| 97视频在线观看播放| 青青草精品在线视频| 国产精品成久久久久| 欧美激情国产精品| 三级影片在线看| 99riav1国产精品视频| 久久99国产精品自在自在app| а天堂中文在线资源| 国产日产一区| 亚洲欧美日韩精品久久| 香蕉成人在线视频| 日韩一区自拍| 亚州欧美日韩中文视频| 国产精品久久久久久久久久尿 | 一级性生活免费视频| 4438全国亚洲精品观看视频| 亚洲免费成人av电影| 中文字幕在线观看的网站| 久久99免费视频| 亚洲美女在线视频| 欧美做受高潮中文字幕| 婷婷五月色综合香五月| 日韩色av导航| xxxx.国产| 销魂美女一区二区三区视频在线| 5566日本婷婷色中文字幕97| av免费观看在线| 日本一区二区视频在线| 欧美大片在线播放| 日本免费精品| 日韩一区和二区| 影音先锋男人在线| 免费视频一区| 久久精品国产精品国产精品污 | 久久精品久久久久| 国产99免费视频| 91片在线免费观看| 777久久精品一区二区三区无码 | 在线视频一二区| 国产日产精品一区二区三区四区的观看方式 | 久久久国产精品亚洲一区| 久艹在线观看视频| 日本在线不卡一区| 亚洲一区久久久| 天堂а√在线资源在线| 午夜精品一区在线观看| 久久久久久久久久久久久久久国产| 希岛爱理av免费一区二区| 欧美激情视频播放| 国内精品国产成人国产三级| 中文字幕一区在线观看| 黄色av免费在线播放| 久久亚洲国产精品尤物| 欧美大胆人体bbbb| 日韩女优一区二区| 老司机精品视频一区二区三区| 99在线免费观看视频| 秋霞av在线| 亚洲特黄一级片| 亚洲一区日韩精品| 久久伊人影院| 亚洲女成人图区| 国产一级淫片a视频免费观看| 成人免费视频一区二区| 国产自产在线视频| 红杏视频成人| 97国产在线观看| 亚洲色图狠狠干| 日韩欧美成人区| 欧洲在线免费视频| 欧美精品黄色| 国产美女久久久| 亚洲国产成人一区二区| 国产欧美一区二区三区在线看蜜臀| 在线观看污视频| 成人日韩在线| 激情久久99| 亚洲欧美日韩精品久久亚洲区 | 久久精品福利视频| 国产乱叫456在线| 夜夜爽夜夜爽精品视频| 国产日韩视频一区| 香蕉国产精品偷在线观看不卡| 国产伦精品一区二区三区免 | 欧美在线视频一区二区| 精品视频一二区| 欧美高清在线视频| 亚洲熟妇无码另类久久久| 日韩三级视频| 久久免费在线观看| 国产精品视频无码| 亚洲国产中文字幕| 中文精品在线观看| 精品一区二区影视| 国产欧美日韩一区二区三区| h片在线观看视频免费| 亚洲性无码av在线| 欧美特级黄色片| 亚洲品质自拍视频网站| 中文文字幕文字幕高清| 日本一不卡视频| 青青草视频在线视频| 成人黄色理论片| 中文字幕欧美日韩在线| 亚洲乱码在线观看| 色婷婷综合五月| 中文字幕在线观看成人 | 成人黄色在线播放| 欧美另类老肥妇| 欧美理论电影在线观看| 992tv免费直播在线观看| 日韩av在线天堂网| 日韩黄色一级大片| 91网址在线看| 激情视频综合网| 亚洲精品韩国| 欧美做暖暖视频| 日韩中文av| 国产精品高潮呻吟久久av无限 | 国产精品a久久久久久| 91在线看黄| 日韩午夜激情视频| 中文字幕一区二区免费| 色综合久久66| 日本中文在线播放| 午夜欧美大尺度福利影院在线看| 午夜69成人做爰视频| 国产精品久久久久毛片软件| 日本女人黄色片| 激情综合网天天干| 日本丰满少妇xxxx| 国产一区二区三区站长工具| 成人午夜小视频| 久草在线资源站手机版| 国模私拍视频一区| 免费在线黄色网址| 日韩精品免费在线播放| 色呦呦免费观看| 欧美三区在线观看| 中文字幕+乱码+中文乱码91| 欧美在线|欧美| 国产精品111| 亚洲国产成人91porn| 亚洲图片第一页| 中文一区二区完整视频在线观看| 伊人影院综合网| 国产精品久久久久影院色老大| 男男一级淫片免费播放| 成人一区二区在线观看| 日本一级大毛片a一| 成人综合在线观看| 少妇精品一区二区| 久久亚洲二区三区| 手机看片福利视频| 国产精品天干天干在观线| 国产精品www爽爽爽| 中文字幕在线观看一区| 日本妇女毛茸茸| 久久久99精品久久| 色噜噜噜噜噜噜| 亚洲视频免费在线观看| 久久久久久久久久久97| 天天色图综合网| 欧美激情图片小说| 亚洲国产精品欧美一二99| 中文字幕乱码av| 一区二区三区免费| 最新日韩免费视频| 一级女性全黄久久生活片免费| 国产精品999久久久| 色噜噜狠狠一区二区三区果冻| 性高潮视频在线观看| 欧美日韩免费在线| 国产对白videos麻豆高潮| 亚洲免费三区一区二区| 日本熟妇毛耸耸xxxxxx| 欧美在线看片a免费观看| 六月丁香在线视频| 欧美在线观看视频一区二区三区| aa视频在线免费观看| 欧美日韩一区二区不卡| 日韩av免费播放| 91久久精品午夜一区二区| 一区二区三区午夜| 亚洲国产成人精品久久久国产成人一区 | 久久97超碰国产精品超碰| 亚洲av熟女高潮一区二区| 久久精品一区二区三区四区| 中文字幕一区二区人妻在线不卡| 国产精品白丝在线| 日韩欧美亚洲视频| 精品久久久久久中文字幕一区奶水 | 亚洲成人资源| 婷婷五月综合缴情在线视频| 麻豆精品新av中文字幕| 中文字幕一区二区三区乱码不卡| 欧美国产日本视频| av片在线免费看| 1区2区3区国产精品| 欧美videossex极品| 日韩欧美高清一区| 亚洲精品一区二区三区新线路 | 热久久久久久久| 中文字幕在线综合| 91小视频在线| 懂色av粉嫩av浪潮av| 亚洲国产精品久久艾草纯爱| 国产乱淫av片免费| 国产一级揄自揄精品视频| free性欧美| 97中文在线观看| 国产乱人伦丫前精品视频| 天天干天天色天天爽| 蜜臀av性久久久久蜜臀aⅴ| 免费a级黄色片| 国产精品美女久久久久aⅴ国产馆| 国产精品18在线| 欧美午夜xxx| 亚洲午夜激情视频| 亚洲欧美国产日韩天堂区| 超碰在线视屏| 国产精品扒开腿做爽爽爽视频| 久久动漫网址| 免费特级黄色片| 日韩av中文字幕一区二区三区| 亚洲一级片av| 日本一二三四高清不卡| 欧美国产一级片| 亚洲欧洲日本专区| xxx欧美xxx| 欧美在线视频二区| 久久久久久一区二区| 91亚洲一区二区| 最新国产精品久久精品| 伊人网中文字幕| 亚洲成年人在线播放| 国产视频网站在线| 欧美成人免费视频| 国产精品国产三级在线观看| 在线观看一区二区三区三州| 久久精品久久精品| av黄色免费在线观看| 欧美精品vⅰdeose4hd| 日本视频在线免费观看| 久久99国产精品久久久久久久久| 爱情电影社保片一区| 97超碰人人模人人爽人人看| 中文精品久久| 日韩精品xxx| 午夜视频一区在线观看| 国产精品热久久| 另类专区欧美制服同性| 视频一区视频二区欧美| 杨幂一区欧美专区| 久久av老司机精品网站导航| 色无极影院亚洲| 欧美在线三级电影| 香蕉视频成人在线| 日韩美女激情视频| 日本不卡二三区| 激情文学亚洲色图| 国产欧美一区二区精品性色超碰| 国产乡下妇女做爰毛片| 欧美福利视频一区| 毛片网站在线观看| 国产欧美在线看| 国产亚洲精品美女久久| 97在线播放视频| av在线不卡观看免费观看| 神马久久久久久久 | 久久精品ww人人做人人爽| 欧美日韩专区| 色婷婷一区二区三区在线观看| 亚洲综合自拍偷拍| 999久久久久| 久久九九有精品国产23| 黄色成人在线视频| 久久综合中文色婷婷| 美腿丝袜在线亚洲一区 | 国产在线激情视频| 国产精品久久久久免费| 日韩电影在线看| 成人免费无遮挡无码黄漫视频| 欧美视频一区在线| av福利在线导航| 日韩视频精品| 不卡的av中国片| 日本熟妇毛耸耸xxxxxx| 亚洲国产小视频在线观看| 成人1区2区| 欧美日韩在线免费观看视频| 久久 天天综合| 男人的天堂一区二区|