redis使用与学习

首页 > 经验 > 作者:YD1662022-10-31 22:43:53

  I/O多路复用展示:

redis使用与学习,(5)

  上面提过,Redis是基于I/O多路复用,然后用C实现的。当接收到请求后,也说过Redis服务器是个事件驱动程序,然后Redis的文件事件分派器就会一直轮询,C源码就是方法aeMain()方法内部一直轮询,然后调用aeProcessEvents(),这个方法就是去调用事件处理器,适配具体的handler(连接应答处理器、命令请求处理器),在适配handler过程中会调用acApiPoll()方法进行系统的适配(Windows、Linux等),然后Linux中调用的是ae_epoll.c文件,也就是这样的过程基于事件实现IO多路复用,效率是很高的。

C/C Linux服务器开发高级架构师学习视频 点击 获取,内容知识点包括Linux,Nginx,ZeroMQ,MySQL,Redis,线程池,MongoDB,ZK,Linux内核,CDN,P2P,epoll,Docker,TCP/IP,协程,DPDK等等。

redis使用与学习,(6)

腾讯认证T9后端开发岗位,linux服务器开发高级架构师系统学习视频点击:

redis使用与学习,(7)

五、Redis日常操作

  Redis有五种数据类型,为:字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)。关于五种数据类型以及作用请参考:Redis学习之5种数据类型操作、实现原理及应用场景

  五种数据常见操作如下:

  1、字符串

  字符串类型:实际上可以是字符串(包括XML JSON),还有数字(整形 浮点数),二进制(图片 音频 视频),最大不能超过512MB。

设值命令: set key value set name monkey ex 20  //20秒后过期 px 20000 毫秒过期 setnx name monkey  //不存在键name时,返回1设置成功;存在的话失败0 set age 18 xx  //存在键age时,返回1成功 批量设值:mset name monkey sex boy 批量获取:mget name sex (\r\n) append追加指令: set name hello; append name world //追加后成helloworld 字符串长度: set monkey '真帅' strlen monkey//结果6,每个中文占3个字节(utf-8) 截取字符串: set name monkey; getrange name 2 4//返回“nke” 计数器: CAS(Atomic原子操作) incr age //必须为整数自加1,非整数返回错误,无age键从0自增返回1 decr age //整数age减1 incrby age 1 //整数age 1 decrby age 1//整数age -1 incrbyfloat score 3.3 //浮点型score 3.3 // 分布式高并发中,可以解决线程安全问题,例如生成唯一号码(订单号)  2、Hash类型

  哈希hash是一个string类型的field和value的映射表,hash特适合用于存储对象,如:

redis使用与学习,(8)

上一页1234下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.