数据缓存与数据结构服务器——redis使用入门
创始人
2024-09-26 09:20:47
0次

文章目录

    • redis 安装
    • 应用领域
    • 值的数据类型
    • hiredis C API

redis 安装

apt install redis

ps -ef | grep redis

netstat -tpnl | grep redis

service redis-server status|start|stop|restart

应用领域

  • 缓存(数据库、Web页面、图片、流媒体)
  • 数据结构存储*
  • key-value 存储系统

值的数据类型

参考手册:doc.redisfans.com

键是字符串,值是多个类型

  • string 字符串(非c字符串,redis自定义字符串)
    • set key value [ex seconds|px milliseconds] 设置键值,以及有效
    • get key 获取键值
    • mset key value [key value…] 设置多个键值
    • mget key [key…] 获取多个键值
    • del key 删除键
    • incr key 自增1| incrby key increment自增increment
    • keys pattern 查键
  • list 列表 有序号
    • lpush/rpush key value [value…]
    • lpop/rpop key
    • lrange key start stop 获取指定范围的值
  • set 集合 无重复值
    • sadd key member [member…]
    • smembers key 集合成员
    • sinter key [key…] 集合交集
    • sunion key [key…] 集合并集
    • sdiff key [key…] 集合差集
    • srandmember key [count] 随机count个成员
    • spop key [count] 随机弹出count个成员
    • ismember key member 集合成员是否存在
    • scard key 集合大小
  • hash 哈希表 字典
    • hset key field value… 添加
    • hget key field 获取
    • hmget key field [field…] 批量获取
  • sorted list 有序集 优先级队列 排行 投票统计
    • zadd key score member [score member…]
    • zrange key start stop [withscores] stop=-1取所有值
    • zincrby key increment member 自增
    • zinterstore key [key…] 集合交集
    • zunionstore key [key…] 集合并集
    • zremrangebyscore key start stop 取指定分数范围的值
  • json
  • stream

其它操作:

  • expire key seconds 设置过期时间 秒
  • pexpire key milliseconds 设置过期时间 毫秒
  • persist key 设置永久有效

hiredis C API

https://github.com/redis/hiredis

结构体:

  • redisContext redis连接上下文
  • redisReply 命令返回的结果
/* This is the reply object returned by redisCommand() */ typedef struct redisReply {     int type; /* REDIS_REPLY_* */     long long integer; /* The integer when type is REDIS_REPLY_INTEGER */     double dval; /* The double when type is REDIS_REPLY_DOUBLE */     size_t len; /* Length of string */     char *str; /* Used for REDIS_REPLY_ERROR, REDIS_REPLY_STRING                   REDIS_REPLY_VERB, and REDIS_REPLY_DOUBLE (in additional to dval). */     char vtype[4]; /* Used for REDIS_REPLY_VERB, contains the null                       terminated 3 character content type, such as "txt". */     size_t elements; /* number of elements, for REDIS_REPLY_ARRAY */     struct redisReply **element; /* elements vector for REDIS_REPLY_ARRAY */ } redisReply; /* type 的取值: - REDIS_REPLY_STRING - REDIS_REPLY_ARRAY - REDIS_REPLY_INTEGER - REDIS_REPLY_NIL - REDIS_REPLY_STATUS - REDIS_REPLY_ERROR - REDIS_REPLY_DOUBLE */ 

操作:

  • redisContext *redisConnect(const char *ip, int port);
  • redisReply *redisCommand(redisContext *c, const char *format, …);
  • void freeReplyObject(void *reply);
  • void redisFree(redisContext *c);
  • redisReply* redisCommandargv(redisContext *c, int argc, const char **argv, const size_t *argvlen);

相关内容

热门资讯

实测交流透视挂!宝玛大厅ai智... 实测交流透视挂!宝玛大厅ai智能透视挂教程,宝玛大厅破解软件经验(本来有挂辅助)1、每一步都需要思考...
总算了解辅助器!朱雀吴江三缺一... 总算了解辅助器!朱雀吴江三缺一ai智能透视辅助挂技巧,朱雀吴江三缺一好像是有挂(有辅助挂细节)朱雀吴...
今日公布透视!九五至尊大厅ai... 今日公布透视!九五至尊大厅ai智能透视插件,九五至尊大厅有没有透视挂窍门(切实有挂技术)1、在九五至...
玩家必看科普开挂!聚闲麻将ai... 玩家必看科普开挂!聚闲麻将ai智能透视辅助挂软件,聚闲麻将总是真的有挂(有辅助挂方式)聚闲麻将能透视...
据报道开挂!旅游娱乐ai智能开... 据报道开挂!旅游娱乐ai智能开挂工具,旅游娱乐辅助工具演示(一直有挂教学)1、全新机制【旅游娱乐ai...
一分钟揭秘开挂!决胜朋来麻将a... 一分钟揭秘开挂!决胜朋来麻将ai智能透视辅助挂教程,决胜朋来麻将真是真的是有挂(有辅助挂总结)1、首...
如何分辨真伪透视!红牛ai智能... 如何分辨真伪透视!红牛ai智能透视攻略,红牛是不是有挂经验(真是有挂技术)1、操作简单,无需红牛手机...
2分钟细说辅助器!江湖大庆麻将... 2分钟细说辅助器!江湖大庆麻将ai智能透视辅助挂攻略,江湖大庆麻将竟然是真的有挂(有辅助挂头条)1、...
总算清楚透视挂!老夫子厅ai智... 总算清楚透视挂!老夫子厅ai智能透视挂技巧,老夫子厅怎么开挂课程(好像发现有挂)老夫子厅破解侠是真的...
解密关于辅助!菜鸟麻将ai智能... 解密关于辅助!菜鸟麻将ai智能透视辅助挂脚本,菜鸟麻将总是存在有挂(有辅助挂存在)1、用户打开应用后...