1 老师,我看视频,presence service db schma只有userid和last update time(hearbeat), 这个地方要不要加一个connection column,这样的话,websocket service就知道哪个instance是在和receiver userid 有websocket链接了,如果不加在这里,那这个信息应该加在哪里呢?
2 对于facebook messager,视频里说,用户上线后要先读queue再读db,这个地方是怎么读queue的啊,如果我想读我的未读信息,我不觉得queue可以支持这种基于userid的query, 老师这个地方能帮解释一下吗?
1 但是根据这个图,Queue(Iris)确实是保存一周的数据,每次用户上线应该是先读Queue(Iris)吧?
2 facebook messenger这里的这个queue(Iris)是不是对应到whatsapp那个保证order的queue?还是说对应到whatsapp那个write back cache?
roger
4
根据这个情况,我觉得这里的队列是每一个用户一个队列,看看老师怎么回答
WhatsApp 里面是所有人share一个队列
roger
6
@logic 对于What’s App的 write back cache,我还有个疑问。
就是用户上线以后,根据自己的last_read timestamp 和 receiverId 去读取未读消息,对于一般现有的cache来说,没有办法实现上述功能,一般的cache就是kv store。
Redis Sorted Set 可以实现上述功能,但是我觉得需要自己实现writeback。有现有的cache支持上述功能吗?
logic
7