电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

基于python實(shí)現(xiàn)操作redis及消息隊(duì)列

瀏覽:5日期:2022-07-13 08:54:40

操作 redis

import redisredisPool = redis.ConnectionPool(host=’192.168.100.50’, port=6379, db=8)redis= redis.Redis(connection_pool=redisPool)redis.set(’key’,’values’)redis.get(’com’)redis.append(’keys’,’values’)redis.delete(’keys’)print(redis.getset(’name’,’Mike’)) #賦值name為Mike并返回上一次的valueprint(redis.mget([’name’,’age’])) #輸出name鍵和age鍵的valueprint(redis.setnx(’newname’,’james’)) #如果鍵值不存在,則賦值print(redis.mset({’name1’:’smith’,’name2’:’curry’})) #批量賦值print(redis.msetnx({’name3’:’ltf’,’name4’:’lsq’})) #不存在才批量賦值print(redis.incr(’age’,1)) #age對(duì)應(yīng)的value 加1print(redis.decr(’age’,5)) #age對(duì)應(yīng)的value 減5print(redis.append(’name4’,’is a sb’)) #在name4的value后追加 is a sb 返回字符串長(zhǎng)度print(redis.substr(’name’,1,4)) #截取鍵 nameprint(redis.sadd(’tags’,’Book’,’Tea’,’Coffee’)) #返回集合長(zhǎng)度 3print(redis.srem(’tags’,’Book’)) #返回刪除的數(shù)據(jù)個(gè)數(shù)print(redis.spop(’tags’)) #隨機(jī)刪除并返回該元素print(redis.smove(’tags’,’tags1’,’Coffee’))print(redis.scard(’tags’)) # 獲取tags集合的元素個(gè)數(shù)print(redis.sismember(’tags’, ’Book’)) # 判斷Book是否在tags的集合中print(redis.sinter(’tags’, ’tags1’)) # 返回集合tags和集合tags1的交集print(redis.sunion(’tags’, ’tags1’)) # 返回集合tags和集合tags1的并集print(redis.sdiff(’tags’, ’tags1’)) # 返回集合tags和集合tags1的差集print(redis.smembers(’tags’)) # 返回集合tags的所有元素print(redis.hset(’price’,’cake’,5)) # 向鍵名為price的散列表添加映射關(guān)系,返回1 即添加的映射個(gè)數(shù)print(redis.hsetnx(’price’,’book’,6)) # 向鍵名為price的散列表添加映射關(guān)系,返回1 即添加的映射個(gè)數(shù)print(redis.hget(’price’, ’cake’)) # 獲取鍵名為cake的值 返回5print(redis.hmset(’price’,{’banana’:2,’apple’:3,’pear’:6,’orange’:7})) #批量添加映射print(redis.hmget(’price’, [’apple’, ’orange’])) # 查詢apple和orange的值 輸出 b’3’,b’7’print(redis.hincrby(’price’,’apple’,3)) #apple映射加3 為6print(redis.hexists(’price’, ’banana’)) # 在price中banana是否存在 返回Trueprint(redis.hdel(’price’,’banana’)) #從price中刪除banana 返回1print(redis.hlen(’price’)) # 輸出price的長(zhǎng)度print(redis.hkeys(’price’)) # 輸出所有的映射鍵名print(redis.hvals(’price’)) # 輸出所有的映射鍵值print(redis.hgetall(’price’)) # 輸出所有的映射鍵對(duì)print(redis.rpush(’list’,1,2,3)) #向鍵名為list的列表尾部添加1,2,3 返回長(zhǎng)度print(redis.lpush(’list’,0)) #向鍵名為list的列表頭部添加0 返回長(zhǎng)度print(redis.llen(’list’)) #返回列表的長(zhǎng)度print(redis.lrange(’list’,1,3)) #返回起始索引為1 終止索引為3的索引范圍對(duì)應(yīng)的列表print(redis.lindex(’list’,1)) #返回索引為1的元素-valueprint(redis.lset(’list’,1,5)) #將list的列表索引為1的重新賦值為5print(redis.lpop(’list’)) #刪除list第一個(gè)元素print(redis.rpop(’list’)) #刪除list最后一個(gè)元素print(redis.blpop(’list’)) #刪除list第一個(gè)元素print(redis.brpop(’list’)) #刪除最后一個(gè)元素print(redis.rpoplpush(’list’,’list1’)) #刪除list的尾元素并將其添加到list1的頭部

消息隊(duì)列使用例子

import redisimport jsonredisPool = redis.ConnectionPool(host=’192.168.100.50’, port=6379, db=8)client = redis.Redis(connection_pool=redisPool)# 順序插入五條數(shù)據(jù)到redis隊(duì)列,sort參數(shù)是用來(lái)驗(yàn)證彈出的順序while True: num = 0 for i in range(0, 100): num = num + 1 # params info params_dict = {'name': f'test {num}', 'sort':num} client.rpush('test', json.dumps(params_dict)) # 查看目標(biāo)隊(duì)列數(shù)據(jù) result = client.lrange('test', 0, 100) print(result) import time time.sleep(10)

import redisimport timeimport multiprocessingimport timeimport osimport randomredisPool = redis.ConnectionPool(host=’192.168.100.50’, port=6379, db=8)client = redis.Redis(connection_pool=redisPool)def test1(msg): t_start = time.time() print('%s開(kāi)始執(zhí)行,進(jìn)程號(hào)為%d' % (msg, os.getpid())) time.sleep(random.random() * 2) t_stop = time.time() print('%s執(zhí)行完成,耗時(shí)%.2f' % (msg, t_stop - t_start))while True: number = client.llen(’test’) print('現(xiàn)在的隊(duì)列任務(wù) 條數(shù)是 ', number) p = 100 if number > p-1: print('-----start-----') a = [] for i in range(p): result = client.lpop('test') a.append(result) print('每10條讀取一次', a) po = multiprocessing.Pool(p) for i in range(0, p): # Pool().apply_async(要調(diào)用的目標(biāo),(傳遞給目標(biāo)的參數(shù)元祖,)) # 每次循環(huán)將會(huì)用空閑出來(lái)的子進(jìn)程去調(diào)用目標(biāo) po.apply_async(test1, (a[i],)) po.close() # 關(guān)閉進(jìn)程池,關(guān)閉后po不再接收新的請(qǐng)求 po.join() # 等待po中所有子進(jìn)程執(zhí)行完成,必須放在close語(yǔ)句之后 print('-----end-----') time.sleep(2) elif number < p and number > 0: print('-----start-----') a = [] for i in range(number): a = [] result = client.lpop('test') a.append(result) print('小于10條的 讀取一次 ', a) po = multiprocessing.Pool(number) for i in a: # Pool().apply_async(要調(diào)用的目標(biāo),(傳遞給目標(biāo)的參數(shù)元祖,)) # 每次循環(huán)將會(huì)用空閑出來(lái)的子進(jìn)程去調(diào)用目標(biāo) po.apply_async(test1, (a,)) po.close() # 關(guān)閉進(jìn)程池,關(guān)閉后po不再接收新的請(qǐng)求 po.join() # 等待po中所有子進(jìn)程執(zhí)行完成,必須放在close語(yǔ)句之后 print('-----end-----') time.sleep(2) elif number == 0: print('沒(méi)有任務(wù)需要處理') time.sleep(2) else: time.sleep(2)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 机械加工_绞车配件_立式离心机_减速机-洛阳三永机械厂 | elisa试剂盒-PCR试剂盒「上海谷研实业有限公司」 | 青岛侦探调查_青岛侦探事务所_青岛调查事务所_青岛婚外情取证-青岛狄仁杰国际侦探公司 | 西门子伺服电机维修,西门子电源模块维修,西门子驱动模块维修-上海渠利 | 小威小说网 - 新小威小说网 - 小威小说网小说搜索引擎 | 东莞猎头公司_深圳猎头公司_广州猎头公司-广东万诚猎头提供企业中高端人才招聘服务 | 中高频感应加热设备|高频淬火设备|超音频感应加热电源|不锈钢管光亮退火机|真空管烤消设备 - 郑州蓝硕工业炉设备有限公司 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 合肥网带炉_安徽箱式炉_钟罩炉-合肥品炙装备科技有限公司 | 软瓷_柔性面砖_软瓷砖_柔性石材_MCM软瓷厂家_湖北博悦佳软瓷 | 电位器_轻触开关_USB连接器_广东精密龙电子科技有限公司 | PU树脂_水性聚氨酯树脂_聚氨酯固化剂_聚氨酯树脂厂家_宝景化工 | 中国品牌门窗网_中国十大门窗品牌_著名门窗品牌 | 广东恩亿梯电源有限公司【官网】_UPS不间断电源|EPS应急电源|模块化机房|电动汽车充电桩_UPS电源厂家(恩亿梯UPS电源,UPS不间断电源,不间断电源UPS) | 祝融环境-地源热泵多恒系统高新技术企业,舒适生活环境缔造者! | 酒精检测棒,数显温湿度计,酒安酒精测试仪,酒精检测仪,呼气式酒精检测仪-郑州欧诺仪器有限公司 | 安全,主动,被动,柔性,山体滑坡,sns,钢丝绳,边坡,防护网,护栏网,围栏,栏杆,栅栏,厂家 - 护栏网防护网生产厂家 | 电机修理_二手电机专家-河北豫通机电设备有限公司(原石家庄冀华高压电机维修中心) | 安全,主动,被动,柔性,山体滑坡,sns,钢丝绳,边坡,防护网,护栏网,围栏,栏杆,栅栏,厂家 - 护栏网防护网生产厂家 | 护栏打桩机-打桩机厂家-恒新重工 | 磁力链接搜索神器_BT磁力狗_CILIMAO磁力猫_高效磁力搜索引擎2024 | 中高频感应加热设备|高频淬火设备|超音频感应加热电源|不锈钢管光亮退火机|真空管烤消设备 - 郑州蓝硕工业炉设备有限公司 | 真丝围巾|真丝丝巾|羊绒围巾|围巾品牌|浙江越缇围巾厂家定制 | 青岛空压机,青岛空压机维修/保养,青岛空压机销售/出租公司,青岛空压机厂家电话 | 桥架-槽式电缆桥架-镀锌桥架-托盘式桥架 - 上海亮族电缆桥架制造有限公司 | 气密性检测仪_气密性检测设备_防水测试仪_密封测试仪-岳信仪器 | 膜结构车棚|上海膜结构车棚|上海车棚厂家|上海膜结构公司 | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 光谱仪_积分球_分布光度计_灯具检测生产厂家_杭州松朗光电【官网】 | 升降机-高空作业车租赁-蜘蛛车-曲臂式伸缩臂剪叉式液压升降平台-脚手架-【普雷斯特公司厂家】 | 乐泰胶水_loctite_乐泰胶_汉高乐泰授权(中国)总代理-鑫华良供应链 | 广州/东莞小字符喷码机-热转印打码机-喷码机厂家-广州瑞润科技 | 光纤测温-荧光光纤测温系统-福州华光天锐光电科技有限公司 | 电子厂招聘_工厂招聘_普工招聘_小时工招聘信息平台-众立方招工网 | 塑胶地板-商用PVC地板-pvc地板革-安耐宝pvc塑胶地板厂家 | 济南侦探调查-济南调查取证-山东私家侦探-山东白豹调查咨询公司 密集架|电动密集架|移动密集架|黑龙江档案密集架-大量现货厂家销售 | 数码听觉统合训练系统-儿童感觉-早期言语评估与训练系统-北京鑫泰盛世科技发展有限公司 | 电子厂招聘_工厂招聘_普工招聘_小时工招聘信息平台-众立方招工网 | 锥形螺带干燥机(新型耙式干燥机)百科-常州丰能干燥工程 | 南京办公用品网-办公文具用品批发-打印机耗材采购 | 合肥仿石砖_合肥pc砖厂家_合肥PC仿石砖_安徽旭坤建材有限公司 |