Redian新闻
>
讨论一下怎么处理以登陆的用户 (转载)
avatar
讨论一下怎么处理以登陆的用户 (转载)# BuildingWeb - 网站建设
a*i
1
【 以下文字转载自 StartUp 讨论区 】
发信人: axjti (cheng!), 信区: StartUp
标 题: 讨论一下怎么处理以登陆的用户
发信站: BBS 未名空间站 (Sun May 11 19:46:20 2008)
用一个db table去maintain以登陆用户的session,有什么好处和坏处?
avatar
a*i
2
从startup转来这个版,希望大家多多赐教

【在 a***i 的大作中提到】
: 【 以下文字转载自 StartUp 讨论区 】
: 发信人: axjti (cheng!), 信区: StartUp
: 标 题: 讨论一下怎么处理以登陆的用户
: 发信站: BBS 未名空间站 (Sun May 11 19:46:20 2008)
: 用一个db table去maintain以登陆用户的session,有什么好处和坏处?

avatar
A*L
3
好处好像很多,坏处不知道啊,我在想会不会有安全问题。
我看了一下wordpress,它有table记载当前用户的。

【 以下文字转载自 StartUp 讨论区 】
发信人: axjti (cheng!), 信区: StartUp
标 题: 讨论一下怎么处理以登陆的用户
发信站: BBS 未名空间站 (Sun May 11 19:46:20 2008)
用一个db table去maintain以登陆用户的session,有什么好处和坏处?

【在 a***i 的大作中提到】
: 【 以下文字转载自 StartUp 讨论区 】
: 发信人: axjti (cheng!), 信区: StartUp
: 标 题: 讨论一下怎么处理以登陆的用户
: 发信站: BBS 未名空间站 (Sun May 11 19:46:20 2008)
: 用一个db table去maintain以登陆用户的session,有什么好处和坏处?

avatar
c*l
4
好处是你可以方便保持和维护持久数据,数据库吗要查个什么东西
当然很方便了:)
坏处是你必须事先设计好需要存储的信息,以后要是你想存些新的
状态信息,得添加新的列或表,不是很灵活
另外,你可能每个request都要读或者写这些状态信息,如果访问数量比较大
的话,会加重DB的overhead。虽然你可以加个Cache做front来
消化DB的“读”操作,你还得把Cache和DB之间的communication设计好了。
其实最简单的还是存在文件系统里面,比较流行的例如BerkeleyDB,实际操作
起来可以是一个hash,添加新独立信息很容易,不受传统DB表格
的限制,而且速度非常快。。
my 2 cents

【在 a***i 的大作中提到】
: 【 以下文字转载自 StartUp 讨论区 】
: 发信人: axjti (cheng!), 信区: StartUp
: 标 题: 讨论一下怎么处理以登陆的用户
: 发信站: BBS 未名空间站 (Sun May 11 19:46:20 2008)
: 用一个db table去maintain以登陆用户的session,有什么好处和坏处?

avatar
a*i
5
我直接些个cookie到用户browser里面可以吗

【在 c******l 的大作中提到】
: 好处是你可以方便保持和维护持久数据,数据库吗要查个什么东西
: 当然很方便了:)
: 坏处是你必须事先设计好需要存储的信息,以后要是你想存些新的
: 状态信息,得添加新的列或表,不是很灵活
: 另外,你可能每个request都要读或者写这些状态信息,如果访问数量比较大
: 的话,会加重DB的overhead。虽然你可以加个Cache做front来
: 消化DB的“读”操作,你还得把Cache和DB之间的communication设计好了。
: 其实最简单的还是存在文件系统里面,比较流行的例如BerkeleyDB,实际操作
: 起来可以是一个hash,添加新独立信息很容易,不受传统DB表格
: 的限制,而且速度非常快。。

avatar
a*i
6
logged user很难做成bdb吧,如果你有一堆box,怎么sync啊

【在 c******l 的大作中提到】
: 好处是你可以方便保持和维护持久数据,数据库吗要查个什么东西
: 当然很方便了:)
: 坏处是你必须事先设计好需要存储的信息,以后要是你想存些新的
: 状态信息,得添加新的列或表,不是很灵活
: 另外,你可能每个request都要读或者写这些状态信息,如果访问数量比较大
: 的话,会加重DB的overhead。虽然你可以加个Cache做front来
: 消化DB的“读”操作,你还得把Cache和DB之间的communication设计好了。
: 其实最简单的还是存在文件系统里面,比较流行的例如BerkeleyDB,实际操作
: 起来可以是一个hash,添加新独立信息很容易,不受传统DB表格
: 的限制,而且速度非常快。。

avatar
c*l
7
cookie传递的信息太有限了吧,还有个保密的问题。。
一般传个session id就差不多了:)

【在 a***i 的大作中提到】
: 我直接些个cookie到用户browser里面可以吗
avatar
c*l
8
这个应该没有问题,你每个request是不是都要读这些
状态信息?读BDB的速度比直接读DB快多了。。一堆box的
话我没有试过,应该是有一做load balancer的Proxy server,
状态信息存储在上面,传递到具体的web server上需要其他的
一些技术。。如果你是 Perl guy 的话可以看看 Perlbal 或
相关技术。。

【在 a***i 的大作中提到】
: logged user很难做成bdb吧,如果你有一堆box,怎么sync啊
avatar
a*i
9
不是每个request都要读,我在想,db里存session info,session_id放cookie里,在
放一些很基本的信息就可以了,我用perl很多但现在在用php :)

【在 c******l 的大作中提到】
: 这个应该没有问题,你每个request是不是都要读这些
: 状态信息?读BDB的速度比直接读DB快多了。。一堆box的
: 话我没有试过,应该是有一做load balancer的Proxy server,
: 状态信息存储在上面,传递到具体的web server上需要其他的
: 一些技术。。如果你是 Perl guy 的话可以看看 Perlbal 或
: 相关技术。。

avatar
a*i
10
找到了这个
http://www.tonymarston.net/php-mysql/session-handler.html

【在 c******l 的大作中提到】
: 这个应该没有问题,你每个request是不是都要读这些
: 状态信息?读BDB的速度比直接读DB快多了。。一堆box的
: 话我没有试过,应该是有一做load balancer的Proxy server,
: 状态信息存储在上面,传递到具体的web server上需要其他的
: 一些技术。。如果你是 Perl guy 的话可以看看 Perlbal 或
: 相关技术。。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。