百木园-与人分享,
就是让自己快乐。

Python工具箱系列(二十五)

Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。Redis是一个nosql数据库。nosql是not-only sql的意思,泛指非关系型数据库。

Redis作为一个内存数据库,特点与优点很多,包括但不限于:

◆性能优秀,数据在内存中,读写速度非常快,支持并发10W QPS。

◆单进程单线程,是线程安全的,采用IO多路复用机制。

◆丰富的数据类型,支持字符串(strings)、散列(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。

◆支持数据持久化。可以将内存中数据保存在磁盘中,重启时加载。

◆主从复制,哨兵,高可用。

◆可以用作分布式锁。

◆可以作为消息中间件使用,支持发布订阅。

与其它nosql数据库(例如mongodb)不同,Redis的定位是作为缓存,存储临时数据和简单的消息队列,这个领域没有强力的竞争对手,Redis一枝独秀。网上对于Redis的教程、讨论非常多,在此不再复述,仅就如何安装与使用python操作Redis进行讨论。

Redis安装

Redis当前最新版本为7.0。稳定版本6.2.2。能够在Linux与MacOS上完美安装,但没有官方支持的Windows版本。虽然有好事者提供了Windows版本,对于大量基于windows平台的开发者而言,合适的途径有:

◆远程Linux服务器或者公有云(阿里云,华为云节点)上安装Redis。

◆本地WSL2/WSL上安装Redis。

◆本地虚拟机上安装Redis。

◆使用docker安装Redis。

基于apt安装,最新的Redis版本是4.0.9。其在ubuntu bionic下的安装过程如下:

echo deb http://packages.dotdeb.org wheezy all >> dotdeb.org.list
echo deb-src http://packages.dotdeb.org wheezy all >> dotdeb.org.list
sudo mv dotdeb.org.list /etc/apt/sources.list.d
wget -q -O - http://www.dotdeb.org/dotdeb.gpg | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y redis-server
redis-server --daemonize yes
redis-server --version
systemctl status redis-server

Redis-python安装与使用

安装包的命令如下:

pip install redis

一个简单的示范小程序如下:

import redis

pool = redis.ConnectionPool(host=\'192.168.0.66\', port=6379)
r = redis.Redis(connection_pool=pool)

r.set(\"boss\",\"zhangsan\")
result = r.get(\"boss\")
print(result)

r.set(\"boss\",\"lisi\")
result = r.get(\"boss\")
print(result)

在上述例子中,远程打开Redis服务器。并且使用了连接池要避免反复打开、关闭所造成的性能损失。当初次安装时,这个访问过程一般是失败的,原因是Redis默认绑定在127.0.0.1这个回环地址上,不响应来自网卡的访问。为此,需要编辑/etc/redis/redis.conf文件。也可以使用sed一行命令解决问题。

cat /etc/redis/redis.conf |grep bind
# 直接替换
sed -i \'s/bind 127.0.0.1/bind 0.0.0.0/g\' /etc/redis/redis.conf 
cat /etc/redis/redis.conf |grep bind

随后重新启动Redis-server即可。


来源:https://www.cnblogs.com/shanxihualu/p/17118695.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » Python工具箱系列(二十五)

相关推荐

  • 暂无文章