引用林木木 WordPress 延迟发送邮件回复,当时看到文章我想到的就是用队列实现,Redis 队列实现是很成熟的方案,发邮件、下订单、抢任务等高并发的情景都会采用此类方案。
实现原理就是把当下耗时任务储存起来,后台常驻进程不停的检查还有没有剩下的任务,从队列中按先后顺序取出任务一个一个完成,这样就不会卡用户层UI。发送邮件时,需要连接邮件服务器,往往需要5-10秒甚至更长时间,如果能先给用户一个成功的提示信息,然后在后台慢慢处理发送邮件的操作,可以提高用户体验。
代码在:https://github.com/iMuFeng/wp-comment-faster