簡體   English   中英

聊天室在線用戶列表實施

[英]chatrooms online users list implementation

我必須實現一個聊天室,其中包含該房間中的用戶列表。 我將使用mysql + memcache進行此操作。 當用戶進入或離開房間時,房間中的用戶陣列將被更新。 但是,我們在站點上具有自動注銷功能,因此,閑置的用戶在閑置30分鍾后會注銷,這現在是一個問題:

我無法刷新房間中的用戶列表,因為我不知道自動注銷發生的時間。 我們沒有用於注銷非活動用戶的腳本。 在主要的在線列表中,它們的列出如下:SELECT * FROM users WHERE last_fresh> 1352415100我們的在線列表沒有顯示用戶30分鍾以上處於非活動狀態,但是我無法在以下列表中存儲和更新last_fresh時間:會議室中的每個用戶刷新頁面時的每次訪問。

我怎樣才能做到這一點?

取決於您是否要推或拉更改。 推送始終是首選,但需要像nginx-push-module或其他一些服務器端技術。 拉動絕對容易,但會產生更多開銷。

如果要拉動,則可以輪詢已登錄用戶的列表,並根據數據刷新會議室列表。 一個更新視圖的ajax調用將完成此任務。 看一下jQuery或原型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM