想应用的场景主要是:注册后发邮件(异步)、浏览量+1 (异步)等等,都是一些不重要的应用场景。
如果某框架如 ThinkPHP 或者 Yii 能实现的话,也可以指点一下。
先学习学习。
如果某框架如 ThinkPHP 或者 Yii 能实现的话,也可以指点一下。
先学习学习。
|
mogitaMar 21, 2024
1
|
|
dobeleeMar 21, 2024
2
很多年没写 php 了,不清楚现在有没有出新特性。此前异步一般用 swoole 。一定不用 swoole 的话只能转到 mq 。
|
|
zlhsvcMar 21, 2024
3
丢 redis 队列啊,这两个都有这功能
|
|
4
除非你访问量特别大,不然完全不需要走队列。如果比较耗时那就放请求后的 fastcgi_finish_request 执行就好了
|
|
mohuaniMar 21, 2024
5
也可以扔到 mq 里面,发送邮件的时候,消费 mq 里面的消息
|
|
shinelamlaMar 21, 2024
6
workerman ?
|
|
SethShiMar 21, 2024
7
我只能告诉你没那么简单, 用上了异步, 你的业务写代码的方式也要跟着变的. 已经不是正常的 PHP
你应该遇到业务解决业务的方法, 而不是从技术框架入手. 楼上说了很多: 发邮件 -> 异步队列, 想省事 fastcgi_finish_request (你要用异步的话, 中途重启了怎么办, 失败了怎么处理) 点赞 直接 redis, 然后定时任务同步就好了 |
|
akiyamamioMar 21, 2024
8
webman 吧
|
|
abigeaterMar 21, 2024
9
laravel 有内置? 实现大概就是写入任务在 redis 然后配合守护进程消费? https://learnku.com/docs/laravel/10.x/queues/14873#0796f7
|
|
meshellMar 21, 2024
10
https://www.php.net/manual/en/function.fsockopen.php 封装下就行了,只要不 read 就可以。
|
|
jonsmithMar 21, 2024 via Android
11
消息队列,最稳。
|
|
ymlluoMar 21, 2024
12
laravel queue
|
|
IdJoelMar 21, 2024
13
amphp swoole workman
|
|
happy32199Mar 21, 2024 via iPhone
14
试试 amphp php 原生协程和配套库
|
|
vovovMar 21, 2024 via iPhone
15
你这个需求,我一般用 laravel 的队列开发最快😁
|
|
yekernMar 21, 2024
16
Laravel 根据你的需求根本就不需要队列实现, 有一个事件系统,使用观察者模式就够用了.
|
|
mrpzx001Mar 22, 2024
18
hyperf
|
|
kellerMar 22, 2024
19
用 Laravel 队列吧
|
|
star7thMar 22, 2024
20
Laravel 自带的队列就能解决你的发邮件问题
|
|
putyyMar 22, 2024
21
Laravel ThinkPHP 都可以实现,也有对应的队列相关包,或者自己写个命令行
```php while(true){ // todo redis 出队消费 sleep(5); } ``` |
|
cxdLandMar 22, 2024
22
Yii-queue 开箱就用
|
|
changzMar 23, 2024 via Android
24
swoole debug 起来是个灾难
|
|
coderzhangsanMar 23, 2024
25
楼上给出很多建议,帮你总结下:
1. 使用支持异步的框架或包 a. 基于 swoole 扩展的框架 b. 基于 workman 的框架 c. 支持异步的 composer 包, 例如 guzzle/amphp/reactphp 2. sapi 为 fpm 时, 可以用 fastcgi_finish_request 另类实现,封装一个异步观察者模式库,将阻塞业务放置在 fastcgi_finish_request 函数后执行。 |
|
26
多谢 25L ,我已经在看 reactphp ,毕竟一个 composer 就可以,不需要太多配置。
|
|
GarethChuMar 23, 2024
27
ThinkPHP 不是有个事件监听可以实现你需要的功能
|
|
langziyangApr 2, 2024
29
看一看 symfony 的 https://symfony.com/doc/current/messenger.html
|
|
YanlongliApr 11, 2024
30
yii 我用的 yii-queue 任务队列,算是伪异步。
|
|
lyxxxh2Apr 18, 2024
31
没有。
*** 要知道 php 生态都是 fpm 的。 socket 的框架,用 fpm 的生态,自己品下。 最好是直接换语言。 也不是不能用,就是他不"专业",某些情况,需要你填额外的坑。 *** 注册后发邮件: 耗时且不需要等待,队列完事。 浏览量+1: 难道这操作有 500ms+? 不然就把代码复杂化。 |