2019年7月

使用消息队列的原因有很多,比如:

  • 耗时任务,最典型的就是发邮件和发送http请求
  • 高并发,要排队,比如写入数据库操作,比如电商里的抢购或者秒杀

消息队列,可大可小。最小的,就是写个函数,然后用cron定时执行,用mysql做介质。再大一点,就是用一些成熟的开源库,比如RabbitMQ等,分为clientserverworker。再大,就是自己写一个适合自己的队列库,搞分布式,搞集群。扯远了。。。。

我目前用消息队列,就是因为用户评论的时候,会请求Server酱,给我发通知,这是个耗时的任务,尤其是我博客服务器在美国,对方服务器在国内。

想了2天,最终决定,就用最简单的办法,用户评论的时候,在数据库写入一条记录,然后再写个小脚本,每5分钟查询一次,有没完成的,就执行一下。

其实我这人太纠结了。我这博客又他妈不是什么热门网站,一个月能有几条评论?杀鸡不能用牛刀。

就这样吧。

github

Typecho_Comment2Hook_Plugin

使用方法:

  • 请把Comment2Hook整个目录拷贝到 Typecho 安装路径的usr/plugins/
  • 登录进入 Typecho 博客后台,进行设置,否则不能使用
  • 设置的时候,必须填入 webhook 的 url,例如,Server 酱会给你一个 url,类似这样:https://sc.ftqq.com/<"server chan key">.send
  • 目前只支持 Server 酱,其他通道会后续增加

特别感谢

//ctx.res
//Node's response object.

//Bypassing Koa's response handling is not supported. Avoid using the following node properties:

res.statusCode
res.writeHead()
res.write()
res.end()