例如在注册接口中,除基本业务逻辑外,还有发送短信通知、发送微信通知的逻辑。现在想把通知逻辑“异步、队列式处理”,那么,单机解决方案是什么呢?还是说,直接上消息中间件,如 RocketMQ 。
|  |      1luckyrayyy      2020-04-15 02:48:35 +08:00 via iPhone vert.x? | 
|  |      2jadec0der      2020-04-15 03:47:09 +08:00 Java 的话用一个 BlockingQueue 就行了,其他语言也差不多,用一个队列结构,再分一个线程取消息。 如果在云上的话还是建议用消息服务队列,中间件没必要自己搭。 | 
|  |      3opengps      2020-04-15 07:31:42 +08:00 via Android 单机的解决方案是使用异步线程,消息队列给集群用,小项目就别选大方案,不然维护这一堆中间件的成本也不小 | 
|  |      4lhx2008      2020-04-15 07:44:03 +08:00 via Android guava 有 eventbus | 
|      5fniy OP @luckyrayyy 你不说我都接触不到这个名词,你是怎么知道这个东西的? | 
|  |      7ISSSSSSS      2020-04-15 11:25:01 +08:00 Redis 足以实现一个简单高效的消息系统。 不推荐基于应用本身的,因为一旦重启,信息会丢失。实在不行数据库也可以。 | 
|  |      8luckyrayyy      2020-04-15 11:29:04 +08:00 @fniy 知乎上有个布道师,天天安利这个,我就试了试.. | 
|  |      9tabris17      2020-04-15 11:33:01 +08:00 问题在于你是否要保证队列的可靠性和数据完整性 |