自定义redis连接池(字典操作)
pool=redis.ConnectionPool(host='127.0.0.1', port=6379,max_connections=1000)
conn=redis.Redis(connection_pool=pool)
'''
所有的网络通信都是socket来进行通信的
创建连接池,创建连接池的过程,就是多个socket的过程
去连接池中获取连接
创建连接池,在连接他
'''
例子:
创建连接池
import redis
##所有的网络都是socket来进行通信的
##创建连接池,创建连接池的过程,就是多个socket的过程
pool=redis.ConnectionPool(host='127.0.0.1', port=6379,max_connections=1000)#如果有密码的话,后面还要写密码
##取连接池中获取连接
conn=redis.Redis(connection_pool=pool)
#创建连接池,在连接他 哈希操作:
清空缓存里面所有的值:
conn.flushall() 拿到redis里面所有的键:
conn.keys()
获取单个:hset,hget
##字典操作k4:{name:'yunxin',age:26}
# conn.hset('k1','name','yunxin')
# conn.hset('k1','age','20')
##上面是把值存进字典里面,执行完之后已经把值存进字典里面了
'''
k1:{name:yunxin,
age:20}
''' 获取全部:hgetall
# # conn.set('foo','Bar')
# val=conn.hgetall('k1')
# ##取全部的值操作
# print(val) 批量设置,批量获取:hmset,hmget
# conn.hmset('k2',{'name':None,'age':20})
val=conn.hmget('k2','name','age')
# print(val) 获取长度:hlen
conn.hlen('k2')
'''
hdel 删除
hexist
hvals
''' 判断是否存在:hexists
# val=conn.hexists('k2','name')#判断是否存在改值
#只要存在性对应的键就可以为真
# print(val) 计数器:hincrby
conn.hincrby('k2','age',amount=2)##可以每一次都加1,age的值,只要上面没有重新赋值,每次都可以加1操作,amount=2每一次增加2
# print(conn.hget('k2','age'))
增加浮点数:hincrbyfloat
# conn.hincrbyfloat('k2','age',amount=0.1)## 生成器:hscan_iter ##下面拿到的是一个生成器,可以一个一个的取数据
# ret=conn.hscan_iter('k2',count=10)##第一次 循环的时候,取了10条数据出来
# for i in ret:
# print(i)
##在下面循环打印出来
#迭代器iter(生成器或者是可迭代对象(列表))的话,取数据是__next__ 生成器内部实现原理
'''
cursor = '0'
while cursor != 0:
cursor, data = self.scan(cursor=cursor, match=match, count=count)
for item in data:
yield item
'''
'''
cursor是起始位置,取数据的位置
count是取多少条数据出来
'''
自定义redis连接池(字典操作)的更多相关文章
- 泊爷带你学go -- redis连接池的操作
package main import ( "common" "fmt" "proto" "strconv" " ...
- java操作redis redis连接池
redis作为缓存型数据库,越来越受到大家的欢迎,这里简单介绍一下java如何操作redis. 1.java连接redis java通过需要jedis的jar包获取Jedis连接. jedis-2.8 ...
- Redis】Java中使用Jedis操作Redis(Maven导入包)、创建Redis连接池
如果我们使用Java操作Redis, 需要确保已经安装了 redis 服务及 Java redis 驱动. Maven项目可以直接在pom.xml中加入jedis包驱动: <!-- https: ...
- Django day35 redis连接池,redis-list操作,django中使用redis,支付宝支付
一:redis连接池, 二:redis-list操作, 三:django中使用redis, 四:支付宝支付
- redis连接池操作
/** * @类描述 redis 工具 * @功能名 POJO * @author zxf * @date 2014年11月25日 */public final class RedisUtil { p ...
- 三:Redis连接池、JedisPool详解、Redisi分布式
单机模式: package com.ljq.utils; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; ...
- Redis连接池
package com.lee.utils; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; impor ...
- python使用dbutils的PooledDB连接池,操作数据库
1.使用dbutils的PooledDB连接池,操作数据库. 这样就不需要每次执行sql后都关闭数据库连接,频繁的创建连接,消耗时间 2.如果是使用一个连接一直不关闭,多线程下,插入超长字符串到数据库 ...
- redis连接池 jedis-2.9.0.jar+commons-pool2-2.4.2.jar
java使用Redis连接池 jar包为 jedis-2.9.0.jar+commons-pool2-2.4.2.jar jar下载地址 package com.test; import redis ...
随机推荐
- C#中连接MySQL数据
小结一下MySQL在C#中是如何连接的,并做一些简单的选择(SELECT).插入( INSERT).更新( UPDATE).删除(DELETE ) (一)连接 a) Firstly, you shou ...
- Jquery weui显示右箭头
<div class='weui_cells weui_cells_access'> <div class='weui_cell'> <div class='weui_c ...
- 三、文件IO——系统调用(续)
3.2.4 read 函数--- 读文件 read(由已打开的文件读取数据) #include<unistd.h> ssize_t read(int fd, void * buf, siz ...
- 对div的操作
链接:https://blog.csdn.net/wide288/article/details/34116495 判断DIV的内容改变的方法 近日,在帮朋友写一段小程序的时候,用到了iframe,在 ...
- [C++]Linux之读取计算机网络数据[/proc/net/dev]
#include<stdlib.h> #include<stdio.h> #define BUFFER_SIZE 256 int main(){ FILE *stream; c ...
- rabbitMQ学习1:消息队列介绍与rabbitmq安装使用
1. 什么是消息队列 生活里的消息队列,如同邮局的邮箱, 如果没邮箱的话, 邮件必须找到邮件那个人,递给他,才玩完成,那这个任务会处理的很麻烦,很慢,效率很低 但是如果有了邮箱, 邮件直接丢给邮箱,用 ...
- jsp中的el表达式没有解析
今天发现jsp中的el表达式没有解析,把解决的过程记录一下 在web.xml的web-app节点的版本改成2.4以上
- Scala思维导图
- 给tomcat 配置https
参考以下链接 https://www.cnblogs.com/xiaoliao/p/5778262.html 本人使用环境和版本 tomcat 7.7 阿里云 centos 7还是red hat 浏览 ...
- NoClassDefFound Error: com/fasterxml/jackson/annotation/JsonAutoDetect
少了 jackson-annotation https://blog.csdn.net/qq_36497454/article/details/80461676