以QQ为例:
QQ用户数量巨大,一台服务器是不可能够用的,所以它们一定用很多台服务器,每个用户的信息都放在不同的主机上。
那它如何处理密码验证的呢?有A,B,C,D,E,F 6主机难道6台主机上都有完整的用户账号密码数据?

解决方案 »

  1.   

    一般来说这种大规模系统会分很多区域或者Pool,区域又分很多个集群,每个集群又会按功能分不同的服务,比如验证服务、信息服务、文件服务等。每个区之间都有实时同步机制。登录的时候首先会有个导航来告诉应该登哪个区,帐号密码会发到验证服务器器验证,验证成功后会连接到一个入口网关服务,然后以后的通信都是通过这个入口服务来分发。
      

  2.   

    呵呵,那下一个环节呢?反正总有一台服务器需要知道整个数据库的用户信息吧。
    哦,我想到一个方法,QQ是以数字做为账号,只要把对应数字段的账号分批放入不同的服务器便可以实现导航了。比如1-500000在服务器A,以此类推,可行不?