redis学习笔记:基础

1.nosql有哪些,各自的优点

  • Memcached:多核操作,单实例QPS极高,但只支持key-value结构存储,无法持久化,不能备份,不能同步,仅内存操作。
  • MongDb:文档型数据库,存放xml,json。可以同步,持久化。
  • redis:
  1. 支持多种数据结构,如 string(字符串)、 list(双向链表)、dict(hash表)、set(集合)、zset(排序set)、hyperloglog(基数估算)、Pub/Sub、BloomFilter(布隆过滤器)
  2. 支持AOF,RDB持久化到硬盘
  3. 支持主从同步

2.redis分布式锁
先拿setnx来争取锁,抢到之后,再用expire给锁加一个过期时间防止锁忘记释放。
如果在setnx之后,expire执行之前程序crash了。set指令有复杂的操作可以同时把setnx、expire合并到一条命令执行。

3.如何查找某固定前缀开头的信息?
keys指令

4.如果redis正在给线上业务提供服务,这个时候keys会出现什么问题?

  1. redis是单线程的,keys指令会导致现场阻塞一段时间,线上的服务会停顿,直到指令结束。
  2. 使用scan(增量式迭代)指令,scan指令可以无阻塞提取制定模式的keys列表,有几率存在重复,花费时间比keys长。

5.redis异步队列

  1. 一般使用list结构作为队列,rpush生产信息,lpop消费信息。lpop没有消息时,适当sleep或者blpop阻塞一会再重试。
  2. 使用pub/sub主题订阅模式可以实现生产一次消费多次。

6.pub/sub缺点
在消费者下线时会丢失生产数据,可以使用rocketmq

7.redis如何实现延时队列
使用sortedset,拿时间戳作为score,消息内容作为key调用zadd来生产信息,消费者用zrangebyscore指令获取N秒前的数据进行轮询。
在这里插入图片描述

8.redis如何持久化?
RDB做镜像全持久化:会比较耗时,在服务器宕机时会丢失大量数据,就比如要保存一整个数据库的文件,它是一个一个的文件,在某一个段的数据上,它是完整的。
AOF做增量持久化:类似于每次的操作日志比如mysql的binlog。

redis本身机制是AOF持久化开启时会首先加载AOF文件;AOF关闭或不存在时才会加载RDB文件,加载完成后启动成功。

9.如果机器突然宕机了会怎么办?
取决于AOF日志的sync属性配置,如果不要求性能,可以每写一条指令就sync一下磁盘,不会丢数据。
如果在高性能下,一般使用定时sync,比如1s1次,最多只会丢失1s的数据。

10.RDB原理是怎么实现的
fork:redis通过创建子进程来进行RDB操作,
cow(copy on write):子进程创建完后,父子进程共享数据段,父进程继续提供读写服务,写脏的页面数据会逐渐和子进程分离开

11.pipeline(管道模式)的好处
pipeline:因为redis是单线程的,请求只能按部就班一次一次来,这个可以提供多次请求无需等待,直接返回

可以将多次io往返时间缩短为一次,前提是pipeline执行的指令之间没有因果相关性。redis-benchmark压测时可以发现影响redis的QPS峰值的重要因素是pipeline批次指令的数目。
在这里插入图片描述

12.redis 同步机制
redis可以做主从同步,从从同步。

  1. 第一次同步时,主节点做一次bgsave,并同时将后续修改操作记录到内存buffer。
  2. 待完成后将RDB文件全量同步到复制节点中,复制节点接受完RDB文件后将RDB镜像加载到缓存中。
  3. 复制节点RDB加载完成后再通知主节点将近期修改的操作记录同步到复制节点进行重放。
  4. 后续的增量数据可以通过AOF日志同步。

13.redis集群高可用怎么保证?集群的原理是什么?

  1. redis Sentinal:高可用,在master宕机的时候回自动将slave升为master,继续提供服务。若之前的master恢复后不会变成master,而是充当slave。
  2. redis Cluster:扩展性,在单个redis内存不足时,使用cluster进行分片存储,即redis有16384个卡槽,redis会通过存储的key计算出需要存储在哪个段的槽中。
以下是对提供的参考资料的总结,按照要求结构化多个要点分条输出: 4G/5G无线网络优化与网规案例分析: NSA站点下终端掉4G问题:部分用户反馈NSA终端频繁掉4G,主要因终端主动发起SCGfail导致。分析显示,在信号较好的环境下,终端可能因节能、过热保护等原因主动释放连接。解决方案建议终端侧进行分析处理,尝试关闭节电开关等。 RSSI算法识别天馈遮挡:通过计算RSSI平均值及差值识别天馈遮挡,差值大于3dB则认定有遮挡。不同设备分组规则不同,如64T和32T。此方法可有效帮助现场人员识别因环境变化引起的网络问题。 5G 160M组网小区CA不生效:某5G站点开启100M+60M CA功能后,测试发现UE无法正常使用CA功能。问题原因在于CA频点集标识配置错误,修正后测试正常。 5G网络优化与策略: CCE映射方式优化:针对诺基亚站点覆盖农村区域,通过优化CCE资源映射方式(交织、非交织),提升RRC连接建立成功率和无线接通率。非交织方式相比交织方式有显著提升。 5G AAU两扇区组网:与三扇区组网相比,AAU两扇区组网在RSRP、SINR、下载速率和上传速率上表现不同,需根据具体场景选择适合的组网方式。 5G语音解决方案:包括沿用4G语音解决方案、EPS Fallback方案和VoNR方案。不同方案适用于不同的5G组网策略,如NSA和SA,并影响语音连续性和网络覆盖。 4G网络优化与资源利用: 4G室分设备利旧:面对4G网络投资压减与资源需求矛盾,提出利旧多维度调优策略,包括资源整合、统筹调配既有资源,以满足新增需求和提质增效。 宏站RRU设备1托N射灯:针对5G深度覆盖需求,研究使用宏站AAU结合1托N射灯方案,快速便捷地开通5G站点,提升深度覆盖能力。 基站与流程管理: 爱立信LTE基站邻区添加流程:未提供具体内容,但通常涉及邻区规划、参数配置、测试验证等步骤,以确保基站间顺畅切换和覆盖连续性。 网络规划与策略: 新高铁跨海大桥覆盖方案试点:虽未提供详细内容,但可推测涉及高铁跨海大桥区域的4G/5G网络覆盖规划,需考虑信号穿透、移动性管理、网络容量等因素。 总结: 提供的参考资料涵盖了4G/5G无线网络优化、网规案例分析、网络优化策略、资源利用、基站管理等多个方面。 通过具体案例分析,展示了无线网络优化中的常见问题及解决方案,如NSA终端掉4G、RSSI识别天馈遮挡、CA不生效等。 强调了5G网络优化与策略的重要性,包括CCE映射方式优化、5G语音解决方案、AAU扇区组网选择等。 提出了4G网络优化与资源利用的策略,如室分设备利旧、宏站RRU设备1托N射灯等。 基站与流程管理方面,提到了爱立信LTE基站邻区添加流程,但未给出具体细节。 新高铁跨海大桥覆盖方案试点展示了特殊场景下的网络规划需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值