第七章:redis(后篇)

第一节:图形客户端RedisDesktopManager

redis也有自己的图形用户界面RedisDesktopManager,而且操作也非常简单,自行动手每个按钮操作一下便可熟悉。以下简单以图片形式作为介绍,RedisDesktopManager下载可点击此处:

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

第二节:python与redis的交互

和其他数据库的交互一样,对redis的操作不能是手动的,应该给用户动态地进行增、删、改、查。这时需要编程语言,使用代码对数据库进行操作,这便需要python与redis进行交互
Python与Redis的交互可以通过第三方类库redis来进行

# 安装第三方库redis
pip3 install redis
  • 交互的一般流程
    1、创建Redis客户端(创建即可,内存没有涉及磁盘IO,没有连接不连接的概念)
    2、通过客户端的API完成数据交互;

【tips】交互结束也无需断开连接,这一点与磁盘型数据库不同,毕竟访问内存是无所谓“释放IO资源”一说的;redis的PythonAPI和redis的shell操作命令是极为相似的;获取到的数据内容都是字节

例:

import redis


# 创建客户端,使用父类redis.StrictRedis也可以
Client = redis.Redis(
    host='localhost',
    port=6379,
    db=0,
    password='xxxxx'
)

# 字符串操作
Client.set('ChineseName',"老顽童")
Client.mset({
   "string1":21,"string2":"something"})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个基于sw::redis::RedisCluster和libevent异步订阅消息的示例代码: ```cpp #include <iostream> #include <string> #include <sw/redis++/redis++.h> #include <event2/event.h> using namespace std; using namespace sw::redis; void eventCallback(evutil_socket_t fd, short what, void *arg) { RedisCluster *redis = (RedisCluster *)arg; redis->cluster_recv(); } int main() { const string redis_cluster_address = "tcp://127.0.0.1:7000"; const string channel_name = "test_channel"; // 创建 RedisCluster 实例 auto redis = RedisCluster::create(); redis->connect(redis_cluster_address); // 订阅频道 auto callback = [](const string &channel, const string &msg) { cout << "Received message from channel " << channel << ": " << msg << endl; }; auto sub = redis->subscribe(channel_name, callback); // 创建 libevent 实例 auto event_base = event_base_new(); auto event = event_new(event_base, sub->fd(), EV_READ | EV_PERSIST, eventCallback, redis.get()); // 添加事件监听 event_add(event, nullptr); // 进入事件循环 event_base_dispatch(event_base); return 0; } ``` 这个示例代码中,首先创建了一个 RedisCluster 实例,然后调用其 connect 方法连接 Redis 集群。接着,调用 subscribe 方法订阅指定的频道,并传入一个回调函数来处理接收到的消息。 然后,创建了一个 libevent 实例,并使用 event_new 函数创建一个事件对象,将其绑定到 RedisCluster 实例的 socket 描述符上,并传入一个回调函数。最后,调用 event_base_dispatch 进入事件循环。 在事件循环中,libevent 会监听 Redis 集群返回的消息,当有消息到达时,会触发事件回调函数 eventCallback,在回调函数中调用 RedisCluster 实例的 cluster_recv 方法来处理接收到的消息。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值