关于JE的会员在线状态功能

据说是采用内存表实现的,请问哪里有相关的资料可参考?不胜感激。谢谢!

Robbin写到
[quote]
如果性能瓶颈是数据库查询引起的,当然需要增加memcached对象缓存了;如果性能瓶颈在于高并发的频繁对某个小表的插入和更新操作造成的表锁定的话,可以考虑使用内存表解决。

其实这两者应用的场合是不同的,需要解决的问题域也不是同一回事。比方说JavaEye使用了memcached提供对象缓存,可以很大程度上降低应用对数据库的SQL查询负载,但此时你用内存表是不解决问题的。
[color=red]JavaEye也使用了内存表来记录用户在线状态,可以实时显示究竟有多少注册会员在线,究竟在干什么,阅读过什么帖子,这种需要极频繁更新操作,并且还需要查询支持的情况你用memcached是无法提供的。[/color]
[/quote]

1.你可以用hsqldb这样的内存数据库
2.你可以把整个表缓存在内存里面,用ehcache之类的东东。
3.你可以让数据库在内存中缓存这个表,8过俺不知道如何配置。
4.只要性能没有问题,随便你用什么办法了。

这个需要内存表实现吗?

我个人认为只要session和当然控制器和action的名字就可了.

原理:
一般情况:如果session[:user_id]不为空,,显示在线
如果在用户在线,而且在博客频道,,显示"正在看博客"
......

很简单的功能吧,为什么要想得这么复杂呢?

哈哈哈,楼上写代码是不考虑效率的

[quote]哈哈哈,楼上写代码是不考虑效率的[/quote]
liuqiang 大哥,请指教!