为了提高消息队列的实时性能phpredis方法(推荐)

为了提高消息队列的实时性能phpredis方法(推荐)
数据库是存储在链表的形式保存2队列和1作为保存数据,在使用实时读取数据的消息队列
Redis -> lpush美元(美元queenkey,json_encode($array));
Redis -> lpush美元(美元listkey,json_encode($array));
消息队列实例
公共功能insertinfo()
{
信息=阵列('info1美元的mt_rand,'info2= mt_rand(10100)(10100));
美元-> insertinfos(美元的信息,'tutorial-list ','tutoriallist);
}
公共功能insertinfos($array,queenkey美元,美元listkey)
{
/ / redis连接本地服务
Redis =新美元 redis();
$ redis ->连接('127.0.0.1 ',6379);
将数据存储到列表中
Redis -> lpush美元(美元queenkey,json_encode($array));
Redis -> lpush美元(美元listkey,json_encode($array));

}
读逻辑当redis键不读取数据库并重写列表读取redis数据
阅读以下示例:

公共职能getInfo()
{
美元'select * mobantestinfo语句;
结果=美元美元-> getinfos('tutoriallist,$ SQL);

/ / redis键不读redis直接空
如果(空(结果)){
/ / redis连接本地服务
Redis =新美元 redis();
$ redis ->连接('127.0.0.1 ',6379);
访问存储的数据和输出
结果=美元美元redis -> lrange('tutoriallist',0,1);
foreach($结果$ K = > $ V){
结果K } = { $美元json_decode($ V,真的);
}
print_r($结果);
出口();
}
}

功能getinfos($,$ SQL)
{
/ / redis连接本地服务
Redis =新美元 redis();
$ redis ->连接('127.0.0.1 ',6379);

获取存储的数据
结果=美元美元redis -> lrange($,0, 1);

如果(空(结果)){
vmodel美元=新huanshanvotemodel();
结果=美元美元vmodel ->查询($ SQL);

缓冲队列的形式重新进入数据库。
foreach($结果$ K = > $ V){
这个地方可以用相同的数据库来插入右边的订单。
Redis -> rpush美元(美元的关键,json_encode($ V));
}
{人}
$结果=0;

}
返回$结果;
}
以上是方法的全部内容(推荐)为phpredis提高消息队列的实时性能。我希望你能支持得更多。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部