2019獨角獸企業重金招聘Python工程師標準>>>
通過golang編寫一個go腳本,用戶從數據庫中讀取數據并向系統API接口發起請求.
通過創建一個buffer為100的channel使得請求的API接口并發數維持在100.
獲取數據后直接進入循環,然后檢查channel中的數據量,如果channel的數據量小于100,則增加發起請求;否則等待3秒再繼續進行循環
for i:=0; i<c; i=i+500{newsql := deletecontentlistsql + " limit " + strconv.Itoa(i) + ", 500"result_list, err := db.Query(newsql)if err != nil {panic(err)return}for {chl := len(ch)if chl < 100 {isget := result_list.Next()if isget == false {break}var dl dellistresult_list.Scan(&dl.Id, &dl.Cpid)go DeleteCore(o, dl.Id, dl.Cpid, ch)}else{time.Sleep( 3 * time.Second)}}}
?