求教PHP实现排队系统 求教用PHP实现类似海底捞排号或者银行排号的,小程序公众号,简单的排号实时更新就行,希望有源码的大佬能提供参考一下!谢谢啦 没有的话也可以说下原理和实现细节,不一定要用PHP,实现原理也行~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 排号用一些消息队列如RabbitMq或数据库或Redis等都可以实现,这些后段的技术与编程语言无关,php自然也是可以实现的。我看题主的主要问题是不知道如何实时更新?如果用h5的话使用websocket链接,当一个号码被使用的时候,立即通过websocket通知其他所有参与排队的客户端,更新现在的号码。php在长链接这一层面可以使用的框架有Workman,Gatewaywork,Swoole等,博主可以看相关的官方文档了解一下~ 我想的是用数据库或者redis,排号是可以解决的,主要是如何联调像海底捞那种当场叫号,然后手机也更新呢,是需要同步的,比如当场叫到50号,手机也要更新到目前叫号50,因为没开发过类似的排号系统,用客户端轮询的话消耗资源会不会很大。 队列问题: 数据表本身就是排序,只是查询效率不高,可以用redis队列代替查询,注意,但不代替排队的信息如用户信息金额等。存储:插入用户信息,将id或者排队号存入redis队列。叫号:开启一个服务脚本,循环检测状态,如在redis中存储一个key,代表是否可以叫号,如可以叫号,从redis阻塞式弹出id,查询id对应的表记录,处理相关逻辑。通知:单独一套系统。 你把号码存放到redis里面,轮训直接读redis就好了,消耗非常小,毕竟redis支持10万QPS 看你预估使用量有多大普通正常的话轮询已经够了如果比较大或者考虑以后拓展 建议用socket或者推送我现在就在用workerman写socket服务 长时间轮询的话比较推荐socket 关于BBS 版主授权的问题 求一段php编码跳转正确的写法。在线等. discuz! x1.0怎么单独建一个文件判断用户是否登录 如何生成固定格式的EXCEL文件 使用Codecharge Studio开发PHP程序的请进来! 刚才去听了linux1+1+1计划,好贵啊! 用PHP写一个产品发布系统要多长时间,多少钱? PHP远程连接MSSQL 请教各位 PHP使用.h文件的问题 各位老大帮帮忙,明天领导就要了,可现在程序有问题。给指点一下。。。。。(在线等候) Warning: mysql_num_rows(): 使用preg_replace()替换中文符号导致替换为多个如何解决
存储:插入用户信息,将id或者排队号存入redis队列。
叫号:开启一个服务脚本,循环检测状态,如在redis中存储一个key,代表是否可以叫号,如可以叫号,从redis阻塞式弹出id,查询id对应的表记录,处理相关逻辑。
通知:单独一套系统。
你把号码存放到redis里面,轮训直接读redis就好了,消耗非常小,毕竟redis支持10万QPS
普通正常的话轮询已经够了如果比较大或者考虑以后拓展 建议用socket或者推送
我现在就在用workerman写socket服务