要做離線消息功能,如何判斷消息已讀?服務(wù)端判斷如果isOnline那么消息狀態(tài)就是已讀么?如果是app端判斷,能大概說(shuō)下思路嗎?謝謝
這個(gè)屬于你的業(yè)務(wù)邏輯問(wèn)題了。怎么做要根據(jù)你自己的業(yè)務(wù)特點(diǎn)來(lái)了
比如可以把消息放到一個(gè)mysql表里面,
每條消息有個(gè)state字段,標(biāo)記是否已讀
客戶端每收到一個(gè)消息,就給服務(wù)端反饋一個(gè)包,
包里面包含消息id,
服務(wù)端收到反饋把對(duì)應(yīng)消息設(shè)置為已讀
這樣就知道哪些消息未讀,哪些消息已讀了
這個(gè)思路和我想的是一樣的,這里我想到一個(gè)問(wèn)題,在業(yè)務(wù)量大時(shí),比如下單消息通知,商城有大量客戶下單,下單時(shí)給mysql表中存入消息數(shù)據(jù),然后服務(wù)器循環(huán)取未讀數(shù)據(jù),讀取后給消息標(biāo)記為已讀,這里存在一個(gè)問(wèn)題,業(yè)務(wù)量大時(shí),循環(huán)去取表數(shù)據(jù)性能會(huì)有問(wèn)題,請(qǐng)問(wèn)框架有好的解決方案嗎