需要批量操作時候,節省網絡連接交互次數,可以使用 bulk_write。
設置ordered=False,因為批量操作中沒有互相依賴關系,如果有前后順序的互相依賴,需要設置為True。
bed_type_match_failed_list = [{'_id': b, 'update_time': datetime.datetime.now()} for b in self.bed_type_match_failed_set] to_be_request = [UpdateOne({'_id':b['_id']},{'$set':b},upsert=True) for b in bed_type_match_failed_list] self.col.bulk_write(to_be_request,ordered=False) self.bed_type_match_failed_set.clear()