| 北京野狼 回复于:2005-08-02 11:01:56
|
效率低,维护麻烦。
|
| 韩三普 回复于:2005-08-02 11:09:46
|
刚刚学PHP,呵呵,弄出来这个不成熟的东西,怎么能做的效率高一点呢^^
能否针对代码稍加评述?
|
| 北京野狼 回复于:2005-08-02 11:12:02
|
我的意思是完全没有必要使用数据库代替文件
|
| 北京野狼 回复于:2005-08-02 11:13:39
|
http://bbs.chinaunix.net/forum/viewtopic.php?t=581113
|
| 韩三普 回复于:2005-08-02 11:14:31
|
如果用文件系统,当用户多到一定程度,读取会比数据库慢好多呀。数据库本身就是为了优化查询设计的吧。
|
| 北京野狼 回复于:2005-08-02 11:19:23
|
数据库永远比文件慢
|
| hitty 回复于:2005-08-02 11:46:07
|
可以参考phpbb的SESSION做法....
|
| 韩三普 回复于:2005-08-02 12:04:01
|
很厉害,一时不能完全吸收,所以做出来这个纯SESSION的来玩,BB好像是优先COOKIE的,并且很智能,复杂了,写法也不传统,不适合初学者吧,改日再研究,我先这个只是想先多多理解SESSION,下一步也会向BB靠拢。
有人能说说上面这段代码哪些比较垃圾吗?
|
| clampox 回复于:2005-08-04 11:49:15
|
写得可以,比我初学PHP时强多了
可以优化一下,因为大多数时候是在UPDATE,新建SESSION时才INSERT,所以可以变下顺序,
session_write的时候,可以先UPDATE,用mysql_info函数取信息,根据信息来判断是否INSERT,往往可以少跑一次数据库来回。
|
| 韩三普 回复于:2005-08-04 16:23:13
|
谢谢clampox的指点^^
|
| hitty 回复于:2005-08-05 09:43:33
|
可以只用insert和delete就可以了...这样可能最快
|
| wangyih 回复于:2005-08-05 19:42:42
|
楼主可别听上面两位乱说。
|
| Max.H 回复于:2005-08-06 18:15:30
|
不明白这样存有什么用?
一般存到数据库是为了多台服务器共享SESSION吧?
|
| jiangsu3000 回复于:2005-08-15 16:21:35
|
其实用文件做,你就可以针对你的数据结构设计好的查询算法,所以会相对你的应用会比只要查询就用"selecet"修改就用"update"会高效点...
|
| 恋太后天 回复于:2005-08-16 10:47:14
|
与文本相比的效率如何可以实际测试一次
用数据库存的最大意义在于多服务器共享
虽然故意弄成那样也并非最好的做法来的
但毕竟它实现了
|
| redor 回复于:2005-08-16 20:43:51
|
你有100w用户的时候。。。。。你的mysql数据库能撑多长时间?技术是可以实现,但是用起来。。。。
|
| 韩三普 回复于:2005-08-16 21:27:52
|
可以采用数据库分布的方式,自动平衡就行了。现在我和你们讨论这个还有点早,呵呵 。
不过说到这里,把大致思路给大家介绍一下。
一台主mysql服务器,做主要存储用,所以存储的数据都先存这上面,由它分发给其它用来平衡的N台服务器上,session的应用应该是读远远大于写吧,所以,每当网站服务器Apache等请求查询的话,可以把查询请求动态的分到用来平衡的N台服务器上。这样,就是1000w人,可能压力也不是特别的大吧。当然,如果有更高的要求,还会有其它配置的方法,“数据库”只所以叫“数据库”,做为存储就有文件系统比不了的优势。
个人一点小看法,大家接着讨论。初识PHP,已经迷上了。接着学基本功去了^^BYE!
BY 韩三普
|
| jzz_zh 回复于:2005-08-17 00:58:38
|
[quote:6ce4d882f3="韩三普"]如果用文件系统,当用户多到一定程度,读取会比数据库慢好多呀。数据库本身就是为了优化查询设计的吧。[/quote:6ce4d882f3]
使用mysql的内存表吧
mysql4.1以后,内存表 比以前好很多了
|