搜索热词

数据库存贮都用list形式 要存2个队列 1个用作消息队列保存到数据 还有个 就是用来实时读取数据在redis

$redis->lpush($queenkey,json_encode($array));

$redis->lpush($listkey,json_encode($array));

/*消息队列实例*/

public function insertinfo()

{

$infos = array('info1' => mt_rand(10,100),'info2' => mt_rand(10,100));

$this->insertinfos($infos,'tutorial-list','tutoriallist');

}

public function insertinfos($array,$queenkey,$listkey)

{

//连接本地的 Redis 服务

$redis = new \Redis();

$redis->connect('127.0.0.1',6379);

//存储数据到列表中

$redis->lpush($queenkey,json_encode($array));

}

读取 逻辑当redis key没有了 就读取数据库 然后重新写入list 有的话就读取redis数据

/*读取实例*/

public function getinfo()

{

$sql = 'select * from mobantestinfo';

$result = $this->getinfos('tutoriallist',$sql);

//redis key不为空 直接读取redis

if(empty($result)){

//连接本地的 Redis 服务

$redis = new \Redis();

$redis->connect('127.0.0.1',6379);

// 获取存储的数据并输出

$result = $redis->lrange('tutoriallist',-1);

foreach ($result as $k=>$v){

$result[$k]=json_decode($v,true);

}

print_r($result);

exit();

}

}

function getinfos($key,$sql)

{

//连接本地的 Redis 服务

$redis = new \Redis();

$redis->connect('127.0.0.1',6379);

// 获取存储的数据

$result = $redis->lrange($key,1);

if (empty($result)) {

$VModel = new HuanShanVoteModel();

$result = $VModel->query($sql);

//重新将缓存队列的形式放入数据库

foreach ($result as $k=>$v){

//这个地方要从右边插入 来保证跟数据库顺序一样

$redis->rpush($key,json_encode($v));

}

} else {

$result=0;

}

return $result;

}

以上就是小编为大家带来的PHPredis提高消息队列的实时性方法(推荐)全部内容了,希望大家多多支持编程小技巧~

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

php redis消息队列用哪种好,phpredis提高消息队列的实时性方法(推荐)相关推荐

  1. 异构计算-1-10x10:一种异质性和提高能量效率的通用架构方法

    摘要 20年来,微处理器的性能有了1000倍的提高.最近,由于晶体管的速度和能耗的限制,整个半导体工业,逐渐通过多核并行来提高性能.广泛研究表明,未来需要更好的方法,如-超并行机制,接近门限电平调节技 ...

  2. android 投屏 app 三星,两种支持三星Note10投屏到电脑的方法推荐

    北京时间8月8日,三星在美国纽约召开发布会,发布了三星下半年的旗舰手机Galaxy Note 10系列. 三星Note10系列此次采用了后置4摄设计,在最新的DxO拍照评分中,Note 10+获得了1 ...

  3. redis实现消息队列的几种方式及其优劣

    概述 常用的消息队列有,rabbitMq.kafka.RocketMq.ActiveMq等.这些消息队列需要独立安装部署,作为一个中间件来提供服务,虽然有着高性能.高可靠的优点,但是额外部署这些中间件 ...

  4. 延时队列的几种实现方式

    延时队列的几种实现方式 何为延迟队列? 顾名思义,首先它要具有队列的特性,再给它附加一个延迟消费队列消息的功能,也就是说可以指定队列中的消息在哪个时间点被消费. 延时队列能做什么? 延时队列多用于需要 ...

  5. 手把手教姐姐写消息队列(golang)- 使用channel实现消息队列

    前言 这周姐姐入职了新公司,老板想探探他的底,看了一眼他的简历,呦呵,精通kafka,这小姑娘有两下子,既然这样,那你写一个消息队列吧.因为要用go语言写,这可给姐姐愁坏了.赶紧来求助我,我这么坚贞不 ...

  6. redis集群的几种模式

    redis集群的几种模式 主从模式 哨兵模式 Cluster集群模式(推荐) 三种模式都有搭建成功,相比之下,个人还是推荐Cluster集群 主从模式 主从模式(Master-Slave Replic ...

  7. python优先级排序_用Python实现优先级队列的3种方法

    微信公众号:冰咖啡与狗 1. 什么是优先级队列? 优先级队列是一种容器型数据结构,它能管理一队记录,并按照排序字段(例如一个数字类型的权重值)为其排序.由于是排序的,所以在优先级队列中你可以快速获取到 ...

  8. mq中消息消费的几种方式

    mq系列文章 本章内容 从消费者的角度出发,分析一下消息消费的两种方式: push方式 pull方式 push方式 消息消费的过程: mq接收到消息 mq主动将消息推送给消费者(消费者需提供一个消费接 ...

  9. 谈谈mq消息消费的几种方式

    mq系列文章 对mq了解不是很多的,可以看一下下面两篇文章: 聊聊mq的使用场景 聊聊业务系统中投递消息到mq的几种方式 聊聊消息消费的几种方式 如何确保消息至少消费一次 如何保证消息消费的幂等性 本 ...

最新文章

  1. EntLib 3.1学习笔记(5) : Exception Handling Application Block
  2. mysql七:视图、触发器、事务、存储过程、函数
  3. Xcode4.4 import header 的问题解决方法
  4. c# textbox和listbox多行显示
  5. 性能优化系列(四)电量性能优化
  6. 一份新的lilypond谱子,能设置页边距和设置换页符了
  7. Nginx代理百度地图,实现内网访问百度地图
  8. mysql局域网访问6_mysql局域网访问
  9. 中学数学知识点实体识别
  10. 技术分享| 如何使用FFmpeg命令处理音视频
  11. Microsoft Visio Professional 2013打不开也卸载不了解决办法
  12. (三)RabbitMQ集群(Ⅰ)
  13. 【观察】亚信科技:“飞轮效应”背后的数智化创新“延长线”
  14. mysql数据库收缩
  15. c语言编程实现二进制计算器,本程序是用纯C语言编的一个基于命令行的四则运算计算器。主要用于计算四则运算表达式的值,同时可以实现四...
  16. app Store 审核被拒问题详解
  17. 【笔记篇】12订单履约系统——之《实战供应链》
  18. 调用企业微信扫一扫功能流程记录
  19. 2.在unity中创建shader模板
  20. 实战Memcached缓存系统

热门文章

  1. MySQL学习(十五)
  2. semantic ui框架学习笔记三
  3. SSM整合pom.xml和导包
  4. (转)Arcgis for Js之Graphiclayer扩展详解
  5. Attic——删除重复数据的备份程序
  6. 关于华为x2中的外置SDCard的使用
  7. 在VirtualBox中的Ubuntu中添加新硬盘
  8. 给Android程序员的六个建议
  9. 判断男人成熟度16个新标准。
  10. RTEMS 4.9.4 bootcard.c 中的 boot_card 函数分析