成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

Python多線程實現支付模擬請求過程解析

瀏覽:177日期:2022-07-29 13:28:20

思路:

隊列使用說明:

 multiprocessing.Queue()#用于進程間通信,單主進程與子進程無法通信(使用進程池時盡量不要使用這個)  multiprocessing.Manager().Queue()#用于主子進程通信,通過進程池(pool)創建的進程可以數據共享  queue.Queue()#用于線程間通信,同一進程內的數據可以共享

1.從數據庫里獲取待支付的訂單

2.將獲取出來的數據添加至隊列(queue.Queue()),并在函數中返回消息隊列的長度

3.根據隊列長度創建對應的線程數量

4.把創建的線程放在list

5.依次啟動

6.最后等待主線程執行完結束,統計函數運行時長

代碼如下

import asyncioimport sysfrom queue import Queuesys.path.append('../')from tool.__init__ import *from tool.decorator_token import *import timefrom threading import Thread,Lockclass doWeChatNotify(BaseTest): def __init__(self): super().__init__() self.limit_num=100 #查詢記錄條數 self.WeChatNotify_sql=’’’select order_id,order_sn from fw_order where `status`=0 and course_id=1569 ORDER BY create_time desc limit %d ;’’’%(self.limit_num) self.fwh_test_api=fwh_test_api self.data = self.my_op.sql_operation_fwh(self.WeChatNotify_sql) self.fwh_order_dict = {} self.que = Queue() @token_fwh#驗證token有效性 def get_fwh_token_list(self): token_list=self.fwh_token.loadTokenList() return token_list @token_crm#驗證token有 def get_crm_token_list(self) token_list=self.token.loadTokenList() return token_list def testDoWeChatNotify(self): DoWeChatNotify_file=’../tokenFileAndtxtFiles’+’/’+'DoWeChatNotify_asynchronousPay.txt' with open(DoWeChatNotify_file,’a’,encoding=’utf=-8’) as file: str_first='order_idt'+'order_sntn' #文件首行數據 file.write(str_first) fwh_order_id_list, fwh_order_sn_list = [], [] if self.data!=(): for a in self.data:fwh_order_id=a[’order_id’]fwh_order_sn=a[’order_sn’]self.fwh_order_dict[fwh_order_id]=fwh_order_snwith open(DoWeChatNotify_file,’a’,encoding=’utf-8’) as file2:#文件寫入 str_DoWeChatNotifyInfo=str(fwh_order_id)+’t’+str(fwh_order_sn)+’tn’ file2.flush() #清除緩沖區 file2.write(str_DoWeChatNotifyInfo)self.que.put(self.fwh_order_dict)#將數據添加至隊列 #關閉數據庫連接 # self.my_op.close_db_fwh() # self.my_op.close_db() return self.que.qsize()#返回隊列數量 def asynchronousPay(self,order_id,order_sn): count=1 count_num=50 token_list=self.get_fwh_token_list() if (self.data!=()): headers_form_urlencoded[’token’]=token_list[0] url_wechat_success_huidiao=self.fwh_test_api+’/index/Order/doWeChatNotify’ data_wechat_success_huidiao=self.data_to_str.requestDataToStr_firefoxAndChrome_fwh(’’’order_sn:{}order_id:{}meth_id:4timestamp:157129653969sign:0687b01b300b9e300d3996a9d2173f1380973e5a’’’.format(order_sn,order_id)) request_wechat_success_huidiao=requests.post(url=url_wechat_success_huidiao,headers=headers_form_urlencoded,data=data_wechat_success_huidiao) response_wechat_success_huidiao=request_wechat_success_huidiao.json() if ’訂單狀態錯誤,非待支付訂單’ in response_wechat_success_huidiao[’msg’]:print(data_wechat_success_huidiao) else: print(’待支付訂單為空’) def run_multithreading(self):#多線程 threads = []#存放所有的線程 nloops = list(range(self.testDoWeChatNotify()))#獲取隊列數量 if len(nloops)>0: for i,k in zip(nloops,self.que.get().items()):#根據隊列數量來創建線程t = Thread(target=self.asynchronousPay,args=(k[0],k[1]))threads.append(t) for s in nloops: # 開始多線程threads[s].start() for j in nloops: # 等待所有線程完成threads[j].join() else: print('隊列數量為空')if __name__=='__main__': start_time = time.time() # 計算程序開始時間 wechfy=doWeChatNotify() wechfy.run_multithreading()#多線程 print(’程序耗時{:.2f}’.format(time.time() - start_time)) # 計算程序總耗時

總結:親測運行時間還是會快很多,單線程支付100個訂單四十幾秒的樣子,多線程運行不用join2.x秒,用join八秒的樣子,還有很大的優化空間,因為運行時會創建100個線程

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
亚洲欧美99| 日韩精品一区二区三区在线| 欧美在线不卡| 91视频精品在这里| eeuss鲁片一区二区三区在线看| 激情国产一区二区| 国产最新精品免费| 国产91精品一区二区麻豆网站| 国产伦精品一区二区三区在线观看| 麻豆91免费看| 国产精品一区二区久久精品爱涩| 国产在线精品一区二区夜色| 国产一区二区不卡老阿姨| 国产精品一级在线| 国产精品一区二区你懂的| 国产馆精品极品| 成人激情综合网站| 欧美成人国产| 99亚洲视频| 色婷婷精品久久二区二区蜜臂av | 日韩午夜电影av| 91蝌蚪porny| 激情久久婷婷| 亚洲欧美日韩国产综合精品二区 | 亚洲自拍偷拍综合| 奇米在线7777在线精品| 国产福利一区二区三区视频 | 欧美精品乱码久久久久久| 91美女蜜桃在线| 一区二区动漫| 欧美日韩在线电影| 亚洲欧洲日本在线| 久久婷婷影院| 午夜视频精品| 91在线云播放| 激情综合五月婷婷| 天堂va蜜桃一区二区三区漫画版 | 欧美一卡2卡三卡4卡5免费| 欧美国产综合视频| 亚洲黄色成人| 国产精品资源网站| 国内久久视频| 欧美三级视频在线观看| 国产三级一区二区| 日日摸夜夜添夜夜添精品视频| 激情综合五月婷婷| 国内精品久久久久久久果冻传媒 | 在线免费高清一区二区三区| 欧美写真视频网站| 日本一区二区三区久久久久久久久不| 亚洲精品免费在线观看| 国产伦精一区二区三区| 亚洲国产一区二区精品专区| 欧美日韩精品欧美日韩精品一| 国产女主播视频一区二区| 视频一区二区中文字幕| 91丨九色丨尤物| 欧美天堂一区二区三区| 中文字幕一区在线观看| 国产乱理伦片在线观看夜一区| 国产欧美一区二区色老头| 精品国产一区久久| 日韩av在线播放中文字幕| 欧美日韩理论| 91.成人天堂一区| 性久久久久久久久| 国外成人免费视频| 欧美mv日韩mv| 免费看日韩a级影片| 亚洲二区三区四区| 亚洲精品在线免费播放| 久草中文综合在线| 亚洲免费网址| 亚洲三级免费观看| 99久久综合狠狠综合久久| 欧美色欧美亚洲另类二区| 亚洲色图制服诱惑 | 一级做a爱片久久| 欧美成人首页| 精品粉嫩超白一线天av| 欧美成人官网二区| 激情亚洲综合在线| 色素色在线综合| 亚洲综合激情另类小说区| 欧美激情综合| 久久久亚洲高清| 成人免费av在线| 日韩一级欧美一级| 激情综合亚洲精品| 欧美日韩在线播放一区| 天天色天天操综合| 久久国产精品毛片| 亚洲国产精品人人做人人爽| 亚洲视频福利| 中文字幕一区二区视频| 国内综合精品午夜久久资源| 国产亚洲精久久久久久| www.激情成人| 麻豆专区一区二区三区四区五区| 亚洲三级色网| 一区二区三区在线不卡| 99亚洲视频| 亚洲资源在线观看| 国产精品区免费视频| 一区二区三区日韩精品视频| 99热免费精品在线观看| 亚洲最大色网站| 99国产精品久久久久老师| 亚洲另类色综合网站| 亚洲美女视频在线免费观看| 一区二区三区四区在线| 欧美亚洲一级| 精品中文字幕一区二区小辣椒| 欧美日本视频在线| 国产乱人伦偷精品视频不卡| 欧美顶级少妇做爰| 粉嫩av一区二区三区粉嫩| 久久久久久影视| 好吊色欧美一区二区三区四区| 亚洲天堂成人在线观看| 国产精品久久国产三级国电话系列| 亚洲永久免费视频| 一本色道久久综合亚洲91| 精品制服美女久久| 亚洲精品一区二区三区影院| 欧美精品国产| 亚洲成a人v欧美综合天堂| 色天天综合色天天久久| 国产精品99久久久久| 日本一区二区三区国色天香| 国产日韩欧美一区二区三区在线观看| 性做久久久久久| 欧美裸体bbwbbwbbw| 99久久精品国产导航| 亚洲精品欧美激情| 欧美人妖巨大在线| 91尤物视频在线观看| 一区二区三区精品| 欧美情侣在线播放| 欧美日韩伊人| 美日韩一区二区三区| 久久新电视剧免费观看| 国产日韩欧美在线播放不卡| 国内精品在线播放| 中文字幕亚洲精品在线观看| 91国偷自产一区二区使用方法| 成人激情午夜影院| 一级中文字幕一区二区| 日韩三级av在线播放| 99re66热这里只有精品4| 狠狠色狠狠色合久久伊人| 国产精品久久影院| 欧美日韩在线不卡| 99精品99| 99精品欧美一区二区三区综合在线| 亚洲激情六月丁香| 日韩欧美的一区二区| 国产精品日韩一区二区三区| 国产成人在线视频网址| 亚洲国产日日夜夜| 久久午夜电影网| 欧美最猛黑人xxxxx猛交| 欧美日一区二区在线观看| 美国精品在线观看| 亚洲女与黑人做爰| 欧美tk—视频vk| 欧美日韩国产影片| 国产日韩三区| 欧美日韩一区二区三区在线观看免 | 亚洲一区二区三区激情| 日韩欧美美女一区二区三区| 91在线国产福利| 91麻豆国产香蕉久久精品| 99精品国产99久久久久久白柏| 久久久久99| 亚洲伊人观看| 欧美一区二区在线看| 亚洲高清免费观看| 久久综合激情| 91国产丝袜在线播放| 91婷婷韩国欧美一区二区| 另类调教123区 | 国产揄拍国内精品对白| 亚洲青青青在线视频| 国产亚洲欧美激情| 日韩欧美国产精品| av网站一区二区三区| 国产伦精一区二区三区| 美女网站色91| 日本午夜一本久久久综合| 亚洲国产欧美在线人成| 国产精品国产馆在线真实露脸 | 国产女人18水真多18精品一级做| 欧美一区二区精品在线| 欧美久久久久免费| 欧美亚洲综合网| 欧美亚一区二区| 欧美性大战久久久| 欧美午夜一区二区| 欧美日韩国产乱码电影|