Linux+redis部署搭建+rdm客户端+flask连接成功 (初衷为了配合flask_cache存取)

2 篇文章 0 订阅
1 篇文章 0 订阅

1.起始

浅记录一下遇到问题的解决过程
初衷是用flask写接口时-需要用到redis缓存来存/取
前面基础的安装redis命令引用了一下这个文章(点我)

1.为了方便直接在服务器里执行安装命令redis:
wget https://download.redis.io/releases/redis-6.2.6.tar.gz
2.解压redis:
tar xzf redis-6.2.6.tar.gz
3.移动redis目录,一般都会将redis目录放置到 /usr/local/redis目录:
mv redis-6.2.6 /usr/local/redis
4.编译并安装redis,进入redis安装目录,执行make命令编译redis:
cd /usr/local/redis
make
等待make命令执行完成即可

2.问题原因

然后就是编译的时候最容易出现问题,我是出现了如下问题,当时纠结了半天
在这里插入图片描述

3.解决方案

然后直接卸载前面教程用命令安装的redis
重新安装后面就可以了,下载导入到linux根目录下使用
在这里插入图片描述
/
a. linux中用rz导入到/根目录就可以了
b. 注意事项:去redis官网下载最新然后安装
c. gcc记得也要安装最新的,不然编译make有错误
d. 这里详细教程链接
e. 查看gcc -v 版本,我的是10
f. 最后启动redis成功 (启动redis命令:redis-server redis.conf
(首先切换到redis,conf目录下)我自己的redis配置目录下:/usr/local/bin/kconfig):
在这里插入图片描述

g.查看redis进程 ps -ef|grep redis
在这里插入图片描述

h.服务器linux中测试存取redis
22
走到这里就是算是成功了一大半了,然后我们继续往下配置,让其他端也能存取的操作

4.RDM/flask其他客户端连接该缓存配置

首先需要给redis添加访问端口,才能使其他客户端连接成功

1.先查看防火墙状态: systemctl status firewalld
2.再启动防火墙: systemctl start firewalld
3.添加redis端口号:
firewall-cmd --zone=public --add-port=6379/tcp --permanent
备注:如果想关闭防火墙指定端口:
firewall-cmd --zone=public --remove-port=6379/tcp --permanent
4.查看防火墙端口:firewall-cmd --list-ports

注意如果是阿里云服务器,还需要去安全组添加端口
在这里插入图片描述

5.都OK后-使用cmd窗口连接测试下服务器上的redis

1.先看linux ip : ip addr
2.建议先完成这个→ 外网连接redis教程
3.继续找到redis.conf配置文件,设置redis连接密码:
在这里插入图片描述
4.设置密码后,记得重启redis.conf
在这里插入图片描述

查看redis进程
ps -ef|grep redis-server
再杀掉:
kill -9 进程号
启动:
redis-server redis.conf

5.重启后测试用密码连接,首先用错误的密码试了下不行,用配置的密码就OK
在这里插入图片描述
6.最后再rdm测试连接:
在这里插入图片描述
在这里插入图片描述

#6.最后使用flask_cache进行存取操作

from flask_cache import Cache   # pip3 install flask_cache   
from flask import Flask
import redis

config = {
  'CACHE_TYPE': 'redis',
  'CACHE_REDIS_HOST': 'xx.xx.xx.xx', # redis ip
  'CACHE_REDIS_PORT': 0000,  # port
  'CACHE_REDIS_DB': '3',   # 使用的redis db
  'CACHE_REDIS_PASSWORD': 'redis你配置的密码'
}
app = Flask(__name__)
cache = Cache(app=app,config=config,with_jinja2_ext=False)

#向redis存储缓存
#name = key   vlure = 值   time = 存储时间
def caches(name,vlure,time):   
    cache.set(name, vlure, timeout=time)

#向redis取缓存
def caches_get(name):  # name = 缓存名称
    data = cache.get(name)
    return data
    
#指定缓存名删除
def clear_cache(key):
    #指定缓存名删除
    cache.delete(key)
    #return '清除缓存'
    
#清除所有的缓存
def clear_cache_all():
    cache.clear()
    return '清除缓存'

结束~~~~~~~~~~~~!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值