PHP China | 中国开源之路 's Archiver

cwk32 发表于 2008-10-3 14:32

文本数据库 OR MySQL数据库

这么说的,我在做一个东西,是一个聊天室~

现在很多小型网络聊天室(即[b][u]排除[/u][/b]雅虎通网页版、小i等,指一些常见的聊天室系统),大多不是文本数据库就是用MySQL这类的成熟的数据库系统。

我发现的一点是,一般使用MySQL等数据库系统保存数据的,功能比较强大(删除聊天记录,浏览聊天记录等各类功能非常完善),但是,连接到MySQL进行数据交换,不是会造成网站的负担?

聊天室这类系统可能会需要交换大量的数据,更应该选用读写更快的方法,但是聊天室又需要一些特殊的功能,这些只有成熟的数据库系统才能更好的做到。

请大家给我一些建议

[quote]以下为本人的思路,如果有什么错误或欠缺请告诉我,这对我有利~

服务器本地文本数据库具有的优点:
        读写过程简单,相对更快
服务器本地文本数据库具有的缺点:
        删除片段数据设计复杂(填充)
        缺乏强大的数据库设计基础

MySQL数据库具有的优点:
        操作简单快捷
        碎片整理简单
MySQL数据库[b][u]可能[/u][/b]具有的缺点:
        读写过程繁多复杂,可能影响速度[/quote]

[quote]目前使用的仍是文本数据库,删除是使用空白填充,这些空白只有在整理时才会被处理~[/quote]

szy_session1987 发表于 2008-10-3 15:00

使用 memcached 做吧, 定期的备份一下聊天记录

ShiningRay 发表于 2008-10-3 22:01

你是想要BigTable这样的功能吧

lenco 发表于 2008-10-9 14:41

同,
最好还是用数据库
文本的我做只是测试数据用的
(其中关键是并发问题)

flyfly99 发表于 2008-10-10 08:14

聊天室用mysql的heap表,我一直用这个,速度很快,不伤硬盘.

linvo 发表于 2008-11-5 12:22

[quote]原帖由 [i]flyfly99[/i] 于 2008-10-10 08:14 发表 [url=http://www.phpchina.com/bbs/redirect.php?goto=findpost&pid=639112&ptid=82120][img]http://www.phpchina.com/bbs/images/common/back.gif[/img][/url]
聊天室用mysql的heap表,我一直用这个,速度很快,不伤硬盘. [/quote]
顶~

MoHock 发表于 2008-11-5 14:00

:funk: :funk:
我的~~呵呵~~~高并发如果你的主机是WINDOWS,那么放弃文本吧~

七月十五 发表于 2008-11-14 11:14

何不试试SQLite或access
不赞成使用文本,性能和效率都很低,存取接口需要自己写

wbsifan 发表于 2008-11-20 09:20

引用以前看到的,   

本地文件和数据库之间对比,是通过本地磁盘空间就是网络存取速度和数据库服务器存取时间的对比
    a = 本机读写时间
    b = 本机占用空间
    c = 网络传输时间
    d = 数据库服务器磁盘时间
    可以估算到,如果数据库与应用程序存在于一台机器时,主要是 a 与 d 的比较,效果可能并不明显,甚至还要糟一点。因为数据库系统针对磁盘存取经过了精心优化,是操作系统对文件的普通读写无法相比的。
    如果本机的磁盘存取效率不佳,有时从局域网的数据库上取得数据,可能比从本机的缓存取数据还快,这种情况比较少见。

[color=darkorange]数据库系统针对磁盘存取经过了精心优化[/color]
[color=#ff8c00]有许多时候比本地文件还要快[/color]
[color=#ff8c00]不要想当然的以为文本就一定比数据库快[/color]

我要读书网 发表于 2008-11-20 10:49

文本可以支持集群吗,可以支持读写分离吗,可以玩玩而已。

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.