新浪聊天系统是一套用C语言开发的基于irc 的聊天系统。具有速度快,系统数据的全球同步的特点。
新浪聊天系统具体如下特点:
一.新浪聊天是一个多用户多频道的网络,允许在因特网上的用户间的实时的交谈。
用户可以从任何一个已经加入聊天网络的服务器登陆到聊天网络,可以加入任意服务器上的公共频道(每个服务器也可以在本地建立本地频道)。所有的服务器都同时拥有所有的客户的信息(别名,用户名,主机名);
用户可以同时加入多个频道,接受来自多个频道的消息;用户可以在多个频道同时聊天,用户甚至可以不加入频道就可以对该频道发言;用户可以与加入系统的任何人聊天,而不论对方是否与其是在同一频道;
二.新浪聊天是一个支持多服务器系统。
新浪聊天网络弥补了单服务器系统在这方面的不足。可以通过把用户分布到多台服务器上,每个服务器维护一份整个系统的用户视图,系统对客户表现为一个统一的server聊天系统。系统允许的总的用户数在没有理论上的限制。
三.新浪聊天系统具有强大管理功能,包括服务器的管理、频道的管理、用户的管理几个方面。
用户的连接类型与优先级、服务器的自动或手动连接、服务器间连接的认证、单个服务器允许的登陆客户数、来自某个地方的允许用户数等参数都可以进行配置;server提供了对客户的Flood控制,系统设计有算法监测并拒绝用户的DoS攻击
四.新浪聊天具有系统统计功能。
新浪聊天提供丰富的系统状态数据。整个网络的状态,包括整个网络的当前结构、每个服务器的流量、每个用户的流量(该用户发言的量和该用户的接受的发言数据量)、用户别名最近使用情况等信息;IRC提供对服务器间数据的压缩传送,系统支持IPv6。
新浪聊天系统功能模块包括:
1. 用户登陆模块:
用户cookie数据检测,数据库数据检测,用户属性检测
2. 连接chat server 模块
cgi 程序和 chat server 建立socket 连接 ,连接成功后 ,chat server 向cgi 发数据,cgi接到数据后,对client端输出数据,连接保留等待下次数据。
3. 用户数据模块
对用户数据过滤和屏蔽
4. 用户数据发送模块
cgi 程序将用户数据写给服务器共享内存,连接断开。Chat server 从共享内存读取数据。
5. 管理员管理模块
kick , ban ,kill用户,检查系统状态,连接情况,chat server 配置
6. 用户页面调整模块
对页面外观,banner ,颜色修改。
|