运维开发网
广告位招商联系QQ:123077622
 
广告位招商联系QQ:123077622

一 python+redis使用

运维开发网 https://www.qedev.com 2020-07-21 10:48 出处:网络 作者:运维开发网整理
一  .redis+python 1.redis https://www.cnblogs.com/zhaohuhu/p/9140673.html#_label0_0 Redis是一个开源(BSD许可),内存数据结构存储,用作数据库,缓存和消息代理。

一  .redis+python

1.redis

https://www.cnblogs.com/zhaohuhu/p/9140673.html#_label0_0

Redis是一个开源(BSD许可),内存数据结构存储,用作数据库,缓存和消息代理。
它支持数据结构,如 字符串,散列,列表,集合,带有范围查询的排序集,位图,超级日志和带有半径查询的地理空间索引。
Redis具有内置复制,Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性,并通过Redis Sentinel提供高可用性和Redis 

Cluster自动分区。

用于操作内存的软件

可以做持久化

AOF

RDB

-相当于一个大字典

单进程单线程

redis常见性能问题和解决方案:

(1) Master最好不要做任何持久化工作,如RDB内存快照和AOF日志文件 (2) 如果数据比较重要,某个Slave开启AOF备份数据,策略设置为每秒同步一次 (3) 为了主从复制的速度和连接的稳定性,Master和Slave最好在同一个局域网内 (4) 尽量避免在压力很大的主库上增加从库 (5) 主从复制不要用图状结构,用单向链表结构更为稳定,即:Master <- Slave1 <- Slave2 <- Slave3... 这样的结构方便解决单点故障问题,实现Slave对Master的替换。如果Master挂了,可以立刻启用Slave1做Master,其他不变。

 2. resis+python

1. 连接池

redis-py使用connection pool来管理对一个redis server的所有连接,避免每次建立、释放连接的开销。默认,

每个Redis实例都会维护一个自己的连接池。可以直接建立一个连接池,然后作为参数Redis,这样就可以实现多个Redis实例

共享一个连接池。

使用连接池

本质 维护一个已经和服务器连接成功了的socket

以后再发送数据时 直接获取一个sockect 直接send数据

import redis pool = redis.ConnectionPool(host=‘192.168.18.11‘, port=6379) r = redis.Redis(connection_pool=pool) r.set(‘foo‘, ‘Bar‘) print (r.get(‘foo‘)) #是一个字节 b‘Bar‘

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消