100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > PHP+MySQL实现消息队列办法分析

PHP+MySQL实现消息队列办法分析

时间:2018-07-25 05:08:12

相关推荐

PHP+MySQL实现消息队列办法分析

后端开发|php教程

PHP+MySQL,php,方法

后端开发-php教程最近遇到一个批量发送短信的需求,短信接口是第三方提供的。刚开始想到,获取到手机号之后,循环调用接口发送不就可以了吗?

易语言游戏菜单管理源码,ubuntu如何删除字体,scrapy爬虫翻页操作,MUSIC PHP,seo教育行业lzw

但很快发现问题:当短信数量很大时,不仅耗时,而且成功率很低。

土豆猪源码,vscode对vue报错,ubuntu休眠死机,tomcat 输出到窗口,爬虫 账号登录,php动态调用方法,湖州seo推广公司有哪些,手机网站自适应屏幕,html5手机微博模板lzw

于是想到,用PHP和MySQL实现一个消息队列,一条一条的发送短信。下面介绍具体的实现方法:

购物商城源码单商户,vscode打不开api,ubuntu安装eveng,访问tomcat首页报错,sqlite3日期操作,爬虫类外星人早已进入星际文明,ie php 下载,池州seo公司选哪家,漂亮的门户网站,静态模板爱好者lzw

首先,建立一个数据表sms,包含以下字段:

将需要发送的短信和手机号存入sms表中。

接下来,需要用PHP实现一个定时器,定时读取一条记录,并发送短信:

getFirstRecord(); //获取数据表第一条记录 if(!$item){ //如果队列中没有数据,则结束定时器 break; } $res = $sms->send($item[phone],$item[content]); //发送短信 if($res){ $db->deleteFristRecord(); //删除发送成功的记录 echo $item[phone].发送成功; }else{ echo $item[phone].发送失败,稍后继续尝试; } sleep(10); //每隔十秒循环一次}echo 发送完毕!;?>

将代码保存为timer_sms.php,打开命令行,执行定时器:

php timer_sms.php

好了,php定时器将会根据设定的时间间隔(这里设的是10秒),自动完成发送短信的任务。任务完成后将自动退出定时器,不再占用服务器资源。

根据我的测试,PHP定时器占用资源并不多,不会对服务器造成压力。而且是异步访问数据库,也不会影响数据库的运行。

这种方式的优点是:

1、后台运行,前台无需等待

2、成功率高,失败的记录会自动重发,直到成功

关于php+mysql模糊查询功能的相关知识

html 与php+MySQL完成前后端交互

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。