我正在为移动客户端实现一个后端,它提供聊天服务,包括向用户提供多个聊天室。
我决定使用Kafka来进行聊天、消息订阅和发布,因为我不能使用STOMP (我选择的是Servlet而不是Servlet)。
根据我的计划,聊天消息的交换是通过以下过程进行的。(假设Clients A and B在同一个聊天室。)
client A通过WebSocket.client B连接到chat server 1,通过WebSocket.chat server1 and 2连接到chat server 2,订阅Kafka topic 'chat'client A将聊天消息发送到chat se
我在Firebase上遇到了一些问题。我想做的是,如果聊天室不存在,创建一个新的聊天室,否则,获取已有的聊天室ID。到目前为止,我所实现的是:
数据库结构如下:
chatrooms
chatroomID
participantID1 *(can be senderKey or recipientKey)*
participantID2 *(can be senderKey or recipientKey)*
latestMessage
我创建新聊天室的代码如下:
let promiseRoomKey = new Promise
我是redis pub/sub的新手。我在系统中有一个聊天工具,就像IM一样。所以我想使用redis pub/sub。由于我已经检查了样本,它们中的大多数都是基于聊天室设计的。在我的系统中,我会在用户之间建立多个聊天室,比如;
A:B
A:C
D:C
E:F
所以,上面的线是房间。我用node.js实现了服务器,如下所示;
var store = redis.createClient();
var pub = redis.createClient();
io.sockets.on('connection', function (socket) {
var sub = r
我有一个用流星编写的聊天室应用程序,使用的是MongoDB。每个聊天室包含多条消息,一个用户可以加入多个聊天室。我想创建一个查询,从每个聊天室获取给定用户所在的所有聊天室的200条最新消息。我正在做这样的事情:
// These are the ids of the chatrooms the user is currently in var conditions = [{chatroomId: 1}, {chatroomId: 2}]; Messages.find({$or: conditions}, {sort: {createdAt: -1}, limit: 200});
但是,这一限制