我需要實時將更改推送到應用程序的會話範圍。在會話中的每個用戶在我的應用程序也有類似的結構,以這樣的:如何將數據推送到用戶會話?
session.user =
{
name = "Foo",
mojo = "100"
};
用戶可以修改對方的‘魔力’。例如,如果用戶Foo
收到 mojo分,並且他現在有110,我需要更新他的session.user.mojo
以反映收到的附加「mojo」。換句話說,我需要修改他的會話結構。
示例2:session 1
中的用戶在session 2
中收到用戶收到「mojo」的內容。會話2中的session.user.mojo
需要更新以反映此更改。
一些信息:
的inital魔力值從數據庫中抽取並存儲在會話時
「魔咒」的更新總是發生在用戶登錄。數據庫。存儲在會話中的「Mojo」用於管理用戶權限。
我有什麼選擇?這甚至有可能嗎?我完全不知道如何做這樣的事情。
UPDATE我不想將更新後的值傳遞給用戶(當用戶在頁面之間導航時數據會刷新)。我只想在適當的用戶會話範圍內更改它們。
如果這就是所謂的,我想是的。基本上,我想確保會話「mojo」總是與數據庫「mojo」同步。「不幸的是,我不認爲從數據庫中獲取mojo是不實際的,因爲會有大量的數據庫命中。現在有什麼」可插拔「的現有解決方案嗎?你能給我任何閱讀材料/指針嗎?我開始了?我沒有運氣與谷歌。也許我在錯誤的條件下搜索。 – Mohamad 2011-05-27 02:17:30
我更新我的問題有點更清楚。 – Mohamad 2011-05-27 02:30:33
根據我的經驗,保持數據最終過期在'應用程序'是棘手的,因爲它是很難寫出一個過期算法,這種算法可以導致在負載下導致OOM錯誤。 – orangepips 2011-05-27 09:23:05