OICQ的数据库是如何设计的,及其中的表如何建立的,表间关联是什么样的?
我现在想做一个类似QQ的通信软件,是C/S结构,但是不太明白服务器端的数据库构建,比如说一个用户加了很多好友,而这些好友如何保存在服务器端的数据库中。对于这么一个简单的通信工具一般需要那些数据表。请各位仁兄帮帮小弟,谢谢各位了! 问题点数:50、回复次数:10Top
1 楼jun_01(无名小卒)回复于 2005-07-10 16:16:24 得分 0
去虚心请教马化腾先生,呵呵Top
2 楼Sucapable(哈哈)回复于 2005-07-10 16:34:41 得分 0
同意楼上建意Top
3 楼jiudon(有一种感觉,叫想你::)回复于 2005-07-11 00:01:49 得分 0
找到答案了通知我,呵呵!?Top
4 楼CSDNCTO(CSDN首席技术官|我不是蝈蝈俊)回复于 2005-07-11 01:58:10 得分 0
以前听说是放在数据库里面的,
不过QQ用户信息放LDAP会不会效率更高呢?
大家讨论。Top
5 楼9731boy(叉叉TV - 班头爷)回复于 2005-07-11 08:39:53 得分 0
QQ以前的水平可没有这么高,现在是很高了,但现在肯定不能改回去的
LDAP查询效率高,但更新不好
应该是用关系数据库来实现的Top
6 楼sdl111(奔跑)回复于 2005-07-12 12:23:33 得分 0
那位朋友能说的更详细一些。我在这方面不是很清楚。Top
7 楼songsu(松鼠)回复于 2005-07-12 12:46:09 得分 50
一共有两个数据库
一个是本地好友数据库
一个是服务器好友数据库
当你开始登陆是,先读取本地好友数据库,这样做是为了增加数据读取速度
然后就开始根据本地好友数据提供的IP地址,测试他们是否在线!
如果发现无法连接则跳过,等全部的好友连接测试完毕之后,再启动另一个线程读取服务器在线好友数据!
一般数据库如何设计,那是根据实际情况,QQ源代码不公布,你不会知道的!
Top
8 楼givemyidea(SexMan)回复于 2005-07-12 15:54:32 得分 0
不知道.但我能想到的最好办法也只能是.
用户基本信息表
信息1 信息2 .....
好友表
用户号码 好友号码 都以用户基本信息表的号码为外键.
只有这样才能符合那几个范式...也许有达人有好的想法.Top
9 楼sdl111(奔跑)回复于 2005-07-14 17:41:57 得分 0
谢谢各位Top
10 楼sdl111(奔跑)回复于 2005-07-14 17:48:26 得分 0
如果本地不设数据库,数据库都放在服务器端是否可以?我只想让这个即时通信软件用于某个企业内部。Top




