1
jiangnanyanyu 2019-01-13 16:05:35 +08:00 via Android 1
要搞成那种 reactive 模式的
|
2
qile1 2019-01-13 16:15:39 +08:00 via Android 1
用数据库的触发器可以做到实时发送
|
3
334862132 OP |
4
tomczhen 2019-01-13 16:27:25 +08:00 1
触发一个延迟任务,任务检查用户操作进度,根据条件执行业务逻辑。
|
5
ankle306 2019-01-13 17:34:03 +08:00 1
mq,延迟消息
|
6
KasuganoSoras 2019-01-13 18:32:46 +08:00 1
用 php 写一个小脚本就可以
写了一个简单的例子给你: https://github.com/kasuganosoras/SomeCodes/blob/master/v2ex_526598.php 具体的你自己改一下就可以了 |
7
xiangyuecn 2019-01-13 18:47:03 +08:00 1
对服务器压力很大 亮了
也许 99.9% 的定时任务回调对服务器一点影响没有也说不一定呢 如果你的每天注册的用户是海量的。。会发现这是矛盾的。。因为那时候,可能并不会用一个任务通过一次来处理所有的数据 先让任务使劲搞,后面如果服务器确实因为这个任务产生了影响,那就再想办法呗,干嘛提前优化? |
8
richzhu 2019-01-13 19:07:45 +08:00 via iPhone 1
有要求一分钟之内全发完吗? 弄个队列,让它慢慢发去不就好了,除非你的用户真的是很多…… 那样的话就不要想着用一个计划任务,或者一次处理就弄好呢
|
9
jimrok 2019-01-13 20:54:22 +08:00 1
1 分钟对 redis 不会有太大的影响,一分钟做个一个 set。正经的途径是做个时间轮。
|
10
334862132 OP @KasuganoSoras 我是写 python 的,我自己的脚本把 1 小时改成 1 分钟就可以了,不过仍然谢谢
|
11
334862132 OP @xiangyuecn @richzhu 嗯 可能是我杞人忧天吧, 我很不要脸的表示 除了定时任务脚本我写的 发短信都不是我写的, 那短信接口用 TM 同步,都神逻辑,因此我怕对服务器压力大,我不过顺口提了一嘴,人家不改我也没办法,另外说一下 我们用的是 django,要是用 tornado 用同步我就忍了......
|
12
334862132 OP @tomczhen 延时任务总是查单个用户,感觉还不如一分钟查一下把符合条件的都拽出来呢,查询的次数更少,性价比更高呢
|
14
ShangAliyun 2019-01-14 10:31:36 +08:00 1
这种一般是定时执行的,比如每天早上 10 点
|
15
Raymon111111 2019-01-14 11:48:57 +08:00 1
让 key 的维度是分钟粒度的, 然后每分钟去轮询.
压力不会大的, 相信我. |