当前位置: 首页 > news >正文

云南电信网站备案wordpress 建站 linux

云南电信网站备案,wordpress 建站 linux,鞋行业的网站建设,公司网站设计的企业个人主页#xff1a;C忠实粉丝 欢迎 点赞#x1f44d; 收藏✨ 留言✉ 加关注#x1f493;本文由 C忠实粉丝 原创 Redis List列表 收录于专栏[redis] 本专栏旨在分享学习Redis的一点学习笔记#xff0c;欢迎大家在评论区交流讨论#x1f48c; 目录 概述 常用命令 LPUSH … 个人主页C忠实粉丝 欢迎 点赞 收藏✨ 留言✉ 加关注本文由 C忠实粉丝 原创 Redis List列表 收录于专栏[redis] 本专栏旨在分享学习Redis的一点学习笔记欢迎大家在评论区交流讨论 目录 概述 常用命令 LPUSH LPUSHX RPUSH RPUSHX LRANGE LPOP RPOP LINDEX LINSERT LLEN 阻塞命令版本 BLPOP BRPOP 命令小结 ​内部编码  使用场景 消息队列  ​分频道的消息队列 微博 Timeline 概述 列表类型是用来存储多个有序的字符串如下图所示a、b、c、d、e 五个元素从左到右组成了一个有序的列表列表中的每个字符串称为元素element一个列表最多可以存储 2^32 - 1 个元素。在 Redis 中可以对列表两端插入push和弹出Pop还可以获取指定范围的元素列表、获取指定索引下标的元素等如下图所示。列表是一种比较灵活的数据结构它可以充当栈和队列的角色在实际开发上有很多应用场景。 列表类型的特点 第一、列表中的元素是有序的这意味着可以通过索引下标获取某个元素或者某个范围的元素列表例如获取上图的第五个元素可以执行 lindex user:1:message 4 或者倒数第一个元素lindex user:1:message -1 就可以得到元素 e。 第二、区分获取和删除的区别例如 lrem 1 b 是从列表中把从左数遇到的前 1 个 b 元素删除这个操作会导致列表的长度从 5 变成 4但是执行 lindex 4 只会获取元素但列表的长度是不会变化的。 第三、列表中的元素是允许重复的如图列表是包含了两个 a 元素的。 常用命令 LPUSH 将一个或者多个元素从左侧放入头插到 list 中。 语法 LPUSH key element [element ...] 命令有效版本1.0.0 之后时间复杂度只插入一个元素为 O(1), 插入多个元素为 O(N), N 为插入元素个数.返回值插入后 list 的长度。 示例 LPUSHX 在 key 存在时将一个或者多个元素从左侧放入头插到 list 中。不存在直接返回。 语法 LPUSHX key element [element ...] 命令有效版本2.0.0 之后时间复杂度只插入一个元素为 O(1), 插入多个元素为 O(N), N 为插入元素个数.返回值插入后 list 的长度。 示例 RPUSH 将一个或者多个元素从右侧放入尾插到 list 中。 语法 RPUSH key element [element ...] 命令有效版本1.0.0 之后时间复杂度只插入一个元素为 O(1), 插入多个元素为 O(N), N 为插入元素个数.返回值插入后 list 的长度。 示例  RPUSHX 在 key 存在时将一个或者多个元素从右侧放入尾插到 list 中。 语法 RPUSHX key element [element ...] 命令有效版本2.0.0 之后时间复杂度只插入一个元素为 O(1), 插入多个元素为 O(N), N 为插入元素个数.返回值插入后 list 的长度。 示例 LRANGE 获取从 start 到 end 区间的所有元素左闭右闭。 语法 LRANGE key start stop 命令有效版本1.0.0 之后时间复杂度O(N)返回值指定区间的元素。 示例 LPOP 从 list 左侧取出元素即头删。 语法 LPOP key 命令有效版本1.0.0 之后时间复杂度O(1)返回值取出的元素或者 nil。 示例 RPOP 从 list 右侧取出元素即尾删。 语法 RPOP key 命令有效版本1.0.0 之后时间复杂度O(1)返回值取出的元素或者 nil。 示例 LINDEX 获取从左数第 index 位置的元素。 语法 LINDEX key index 命令有效版本1.0.0 之后时间复杂度O(N)返回值取出的元素或者 nil。 示例 LINSERT 在特定位置插入元素。 语法 LINSERT key BEFORE | AFTER pivot element 命令有效版本2.2.0 之后时间复杂度O(N) 返回值插入后的 list 长度。 示例 LLEN 获取 list 长度。 语法 LLEN key 命令有效版本1.0.0 之后时间复杂度O(1)返回值list 的长度。 示例  阻塞命令版本 blpop 和 brpop 是 lpop 和 rpop 的阻塞版本和对应非阻塞版本的作用基本一致除了 在列表中有元素的情况下阻塞和非阻塞表现是一致的。但如果列表中没有元素非阻塞版本会理解返回 nil但阻塞版本会根据 timeout阻塞一段时间期间 Redis 可以执行其他命令但要求执行该命令的客户端会表现为阻塞状态。命令中如果设置了多个键那么会从左向右进行遍历一旦有一个键对应的列表中可以弹出元素命令立即返回。如果多个客户端同时都一个键执行 POP则最先执行命令的客户端会得到弹出的元素。  BLPOP LPOP 的阻塞版本。 语法 BLPOP key [key ...] timeout 命令有效版本1.0.0 之后时间复杂度O(1)返回值取出的元素或者 nil。 示例 Redis 会尝试从 list1 和 list2 中一次弹出一个元素 1. 如果 list1 非空则从 list1 弹出一个元素。 2. 如果 list2 为空则继续尝试从 list2 中弹出一个元素。 3. 如果两个列表都为空客户端会阻塞并等待直到某个列表有元素可弹出为止由于设置了超时为0它会一直等待。 BRPOP RPOP 的阻塞版本。 语法 BRPOP key [key ...] timeout 命令有效版本1.0.0 之后时间复杂度O(1)返回值取出的元素或者 nil。 示例 命令小结 有关列表的命令已经介绍完毕下表是这些命令的作用和时间复杂度开发人员可以参考。 内部编码  列表类型的内部编码有两种 ziplist压缩列表当列表的元素个数小于 list-max-ziplist-entries 配置默认 512 个同时列表中每个元素的长度都小于 list-max-ziplist-value 配置默认 64 字节时Redis 会选用 ziplist 来作为列表的内部编码实现来减少内存消耗。  linkedlist链表当列表类型无法满足 ziplist 的条件时Redis 会使用 linkedlist 作为列表的内部实现。 但是现在版本的 Redis 已经不再使用这两种内部编码使用了 quicklist 代替 使用场景 消息队列  如下图所示Redis 可以使用 lpush brpop 命令组合实现经典的阻塞式生产者-消费者模型队列生产者客户端使用 lpush 从列表左侧插入元素多个消费者客户端使用 brpop 命令阻塞式地从队列中争抢 队首元素。通过多个客户端来保证消费的负载均衡和高可用性。  分频道的消息队列 如下图所示Redis 同样使用 lpush brpop 命令但通过不同的键模拟频道的概念不同的消费 者可以通过 brpop 不同的键值实现订阅不同频道的理念。  微博 Timeline 每个用户都有属于自己的 Timeline微博列表现需要分页展示文章列表。此时可以考虑使用 列表因为列表不但是有序的同时支持按照索引范围获取元素。 1每篇微博使用哈希结构存储例如微博中 3 个属性title、timestamp、content hmset mblog:1 title xx timestamp 1476536196 content xxxxx ... hmset mblog:n title xx timestamp 1476536196 content xxxxx 2向用户 Timeline 添加微博user:uid:mblogs 作为微博的键 lpush user:1:mblogs mblog:1 mblog:3 ... lpush user:k:mblogs mblog:9 3分页获取用户的 Timeline例如获取用户 1 的前 10 篇微博 keylist lrange user:1:mblogs 0 9 for key in keylist { hgetall key } 此方案在实际中可能存在两个问题 1. 1 n 问题。即如果每次分页获取的微博个数较多需要执行多次 hgetall 操作此时可以考虑使用 pipeline流水线模式批量提交命令或者微博不采用哈希类型而是使用序列化的字符串类型使用 mget 获取。2. 分裂获取文章时lrange 在列表两端表现较好获取列表中间的元素表现较差此时可以考虑将列表做拆分。  选择列表类型时请参考同侧存取lpush lpop 或者 rpush rpop为栈异侧存取lpush rpop 或者 rpush lpop为队列
http://www.hkea.cn/news/14521177/

相关文章:

  • 长春做网站的公司哪家好如何做泛解析网站
  • 镇江市建设局网站seo网络优化是做什么的
  • 网站建设公司营销方案网站设计开题报告范文
  • 网站是用什么做的wordpress图片文件目录
  • 网站建设的软件有哪些ppt免费制作网站
  • 安徽企业网站建设公司网络规划设计师备考需要多久
  • 婚纱网站模板素材国外平台卖货
  • 营销网站的设计思路重庆手机网站推广方法
  • 阿里云做的网站怎么备份163企业邮箱注册入口
  • 济南 制作网站 公司吗学做衣服的网站有哪些
  • 京山网站建设泰安市住房和城乡建设局网站
  • 医疗网站前置备案汽车网站建设方案预算
  • 网站开发兼容ie2023网站seo
  • 做网站容易学吗网络推广的优势
  • 虚拟主机做视频网站可以吗招聘网站怎么做市场
  • 青岛网站建设在线网站开发工具需求
  • 做网站怎么每天更新内容深圳互联网公司
  • 甘肃省建设部网站使用经典wordpress编辑器使用手册
  • 做网站大概多少钱php网站开发优势
  • 个人博客网站下载开发直播app多少钱
  • 怎样加快网站收录哈尔滨网站只做
  • 开发区网站开发语言windows 没有wordpress
  • 专业网站设计服务在线咨询做点心的网站
  • 深圳网站设计公司哪家便宜国家企业信用信息系统公示查询官网
  • 安徽网站建设方案开发专注手机网站建设
  • 湛江网站建设制作维护wordpress+企业库插件
  • 石家庄网站排名wordpress自定义页面创建专辑
  • 购买了域名之后怎么做网站公司logo设计在线生成免费设计入口
  • 旅行社电商网站怎么做免费建网上商城
  • 响应式网站开发方案百度竞价推广代运营公司