消息队列中间件(Message Queue)相信大家不会陌生,如Kafka、RabbitMQ、RocketMQ等,已经非常成熟,在大大小小的公司和项目中也已经广泛使用。
有些项目中,如果是只使用初步的消息队列功能(比如少量客户端和简单的消息中转),对于追求“简洁美”的程序猿、攻城狮们,实在不愿意部署、维护一个消息队列中间件,那么就自己动手吧,编写几十行代码,嵌入到现有的模块,消息队列功能就能正常运转起来,是不是很有成就感呢?
下面我抛砖引玉,使用nodejs+UDP实现一个简单的消息队列。你可以用C++、JAVA、C#等其它语言,UDP也可以换成TCP、web api等。当然,如果在正式项目中使用,还得完善逻辑、添加异常处理。
*******************************udpmq.js*****************************
const udpClient = require('dgram').createSocket('udp4');
var clients= {};
<