默認
發表評論 1
想開發IM:買成品怕坑?租第3方怕貴?找開源自已擼?盡量別走彎路了... 找站長給點建議
IM新手求助IM里的收藏功能實現的大概思路
閱讀(401) | 評論(1 收藏 淘帖
3金幣
大家好,想請教一下IM收藏功能的實現思路

場景

有一款IM是社區內部使用,比如有2000-3000人左右,程序已正常運行,在使用中為了能保存消息中各種有用的數據,提出收藏需求,可以類比于微信(其實是相同的),為了簡單起見,就只收藏文本和圖片兩種類型



平臺
有兩種,手機移動端和PC端


程序運行流程
和微信相同,還是寫一遍,沒有做過類似開發,下面寫的是個人理解


手機端收藏一副圖片之后,應該會上傳到服務器,而且本地應該也會緩存一份
對于中央服務器來說,工作量應該比較大,下面是設想的幾點:


  • 對于幾千人的收藏服務端應該有個相關的架構,畢竟不是幾個人的流量,比如每個人的文件組織方式,要不要限定收藏容量。
  • 如果服務端收到收藏的消息之后,應該能像聊天消息一樣同步推送到另一端。這個可以用微信來驗證,比如PC端的收藏列表打開,只要手機收藏成功,PC端就會馬上進行顯示。
  • 某一端在打開收藏的時候,應該會和服務器同步一次。比如微信的收藏在打開時,可以看到會向服務器查詢一次(表面看上去是這樣的),而且本地應該還會有【緩存】,如果不緩存,每次打開都向服務器下載一遍收藏很浪費流量。

這個問題如果抽象來看,和IM并沒有必然聯系?梢猿橄鬄,用戶向服務器上傳文件,再取文件的一個過程。同時,因為人數上千,所以服務器要架構一下,而且還需要本地緩存的處理;臼沁@些,不知道有沒有描述的清楚。

如果有這方面的經驗,請不吝賜教(有償),個人對這個問題也非常有興趣,希望大家共同交流一下。


標簽:求助 IM開發
上一篇:求助關于web端im的消息存儲該怎么實現?從而方便瀏覽器拉取下一篇:求助Android;钕嚓P的技術實現方案。。。
推薦方案
評論 1
收藏這個功能,你不要想太復雜了,換句話說:如果現在就是一個普通的信息系統,而且收藏的不是圖片,那么,是不是一條收藏對于這個人來說,就只是在數據庫里收藏表里加一條記錄而已。

如果再考慮一下,收藏的是一個圖片的話,就多了一個圖片文件的上傳和服務端存儲而已,而此時收藏就是這個圖片文件的文件名或服務端存儲的地址而已。

再考慮一下,要做到im這種收藏,多端同步的話,無非就是再實時多發一條同步指令而已。

其實拆解一下來理解,不會復雜,收藏這功能算是im里最普通的功能了,更復雜的不是這種。

最復雜的功能,比如短視頻這種:它涉及到錄制(錄制參數調整)、壓縮、存儲、上傳(靠譜的一點的還得做成支持斷點上傳)、發送url指令、對方收到url指令并處理、對方下載視頻(復雜的可能還得要搞成支持斷點下載)、對方播放視頻等等流程,而且,你可以想見光是寫好一個穩定可靠的錄制和播放界面也需要一點時間(必竟各機型兼容性要考慮、功能對接接口的易用性要預留出來等等)。
簽名: 繼續上班啦!
打賞樓主 ×
使用微信打賞! 使用支付寶打賞!

返回頂部
辽宁十一选五开奖结