yChat是一个实验,XML配置的,速度快,非常便携,多平台的基于Web的聊天用C编写的,它支持使用OpenSSL安全的SSL套接字,MySQL数据库,并与几乎所有的兼容服务器++且C一点点子支持框架和JavaScript的浏览器。
yChat运行它们POSIX.4a兼容,使用GNU GCC C ++编译器3.1及以上启用pthreads的所有服务器上。它的GNU通用公共许可证下开发的。
yhttpd是基于yChat插座和线程引擎很轻的Web服务器。
这里是“yChat”的一些主要特点:
它的自由和便携式
·yChat是在GNU通用公共许可证开发的,基于GNU
工具(GCC,使用gmake),其他的开源库的东西(如等的libncurses)
并应在任何的POSIX功能的操作系统上运行(如所有基于Linux的
系统一样,FreeBSD,NetBSD的,OpenBSD和其他的BSD系统和Unix系统一样
IRIX,HP-UX,的Solaris等)。
没有必要为特别的聊天客户
·yChat是基于Web的,这意味着客户只能连接到聊天服务器
与正常的网页浏览器,如Microsoft Internet Explorer或任何Gecko-
引擎的浏览器的powerd如Mozilla,Firefox和卡米诺等。
它有一个真正的HTTP Web服务器的功能
·yChat完全运行独立,不需要另外的网络服务器建立
上如Apache,并不需要通过任何种类的CGI的运行。 yChat创建
它自己的插座定制端口(标准端口:2000),似乎是一个完整的
功能HTTP Web服务器向客户端(Web浏览器)。
·该yChat代码库可以automaticaly转换为yhttpd代码库。 yhttpd
是yChat的它运行完全独立,并提供网络服务器的子集
正常网站的网。它也支持公共网关接口(CGI)
脚本。
它的快速和安全
·yChat是用C ++编写这比任何基于Java的聊天服务器或任何更快
服务器写在如PHP,Python或Perl这样的脚本语言。由于
内部数据结构哈希映射用于garuantee某些搜索
在O值(1)的时间。如果一个哈希地图已满,它将被重新处理。
目前,yChat已被测量,提供每秒超过1000次点击/请求
在基于FreeBSD的服务器中使用时CPU使用率低于2%
上的Athlon XP 1900+。表现似乎只有你的带宽是有限的。
此外,每个用户都有自己的会话ID(随机字符串)与标准长度
50个字符,可以相互验证登录的用户。会话ID的长度
可以重新定义为好。此外,会话ID将得到MD5散列可选
因此多数民众赞成更难逆向工程其他用户的会话ID。
此外,yChat支持安全超文本传输协议(HTTPS)连接
使用OpenSSL库。然后,所有的聊天信息将在加密
安全的方式。 HTTPS是可选的,以HTTP(不安全的连接)。
它的HTML模板和基于易于通过基于XML的配置定制
·所有的HTML网站进行预定义为HTML模板文件,可以很容易地修改
与定制的网页设计使用。此外,很多yChat喜好可
主配置文件(ychat.conf)的设置。 ychat.conf完全写入
以XML 1.0,这使得它更容易使用的配置选项中的节目
第三人可能想要写一些有用的工具yChat。
yChat缓存所有的HTML和网页中的图像,以提高整体性能。如果需要的话,该
缓存可清除重新缓存模板文件的新版本。
它的语言模板基础
·管理员可以轻松地创建一个新的语言中,所有系统消息
出现在聊天的用户。预定义的语言是英语,但也有的可能
很容易地添加。该语言可以编辑的基于XML配置文件中。
基于MySQL的数据库
·注册用户存储在MySQL数据库。 C ++程序员可能会觉得免费
与其他数据库例程替换数据库包装类(data.h)
使用其他数据库如PostgreSQL的,SQLite的或基于文本数据库等。
如果愿意,你可以在预编译选项禁用数据库的支持。
它有一个管理界面
·yChat包括一个基于ncurses的管理界面追踪一些
有趣的统计数据和系统信息,使您做一些
管理任务。此外,您可以切换到CLI(命令行
要与提供,以便管理界面的接口)模式
更多可用的功能(例如跟踪当前的系统使用的等)。
如果你不喜欢的ncurses和/或CLI可以禁用预两种选择
编译选项。
它具有记录功能
·该日志管理器跟踪所有yChat系统消息(例如用户
至极登录和退出,这是加载的模块中,MySQL查询等)。此外,一个
Apache风格相结合的日志文件格式由yChat创建(你可以解析这个
日志文件中包含的AWStats所有的Apache日志分析器等)。最后但并非最
至少,所有可用客房的所有公共信息将被记录到磁盘
良好。为了提高性能,您可以定义日志河豚(标准地
新的日志将被写入磁盘的每个20行之后)。如果你想记录
马上的一切,你可以在ychat.conf重置此选项设置为1。
通过自己的命令和动态HTML引擎采用模块化
·所有聊天命令都通过动态加载模块文件实现这可
重新编译和重新加载无需重新启动整个yChat服务器。还
HTML的网站与特定的任务可以被编译成像模块
MODS / HTML / yc_register.so,MODS / HTML / yc_options.so和MODS / HTML / yc_colors.so
等,所以你也可以编写C ++中的动态yChat网站。
其多线程(POSIX线程)
·只有一个主要方法,其派生多个线程,每一个用于它自己的
唯一的任务。例如一个线程用于处理套接字管理器,它
等待进入的TCP / IP请求,另一个线程调度系统定时器
这证明,如果客户仍然活跃或不,将释放内存需要在某些
时间间隔(参见“垃圾回收器”)。此外,每个聊天用户得到它自己
线程。没有必要的存储器浪费通过为每个任务的新
流程。所有用户线程由一个线程池,以避免CPU浪费管理
通过重新使用已完成线程创建的对象每次一个新的线程的
已经就业并已逐出到线程池的队列中。该
队列和总池大小的标准尺寸可以在ychat.conf进行设置。
它采用了智能垃圾收集引擎
·所有用户和室,不必须保持在主存储器(因为
用户已注销或房间已被破坏,因为它是空的)会
不立即被删除,但是被放置约10分钟,在yChat
垃圾收集器。一个新的房间创建系统每次检查
垃圾重用非活动室对象。如果某用户想要在,则登录
系统检查,如果他是已经存在于垃圾收集器。如果是的话,他将
不浪费昂贵的数据库查询来获取用户的重新激活
选项。这提升了重仓yChat服务器,如果整体表现
很多用户和房间对象的创建和销毁频繁。
有什么新的0.8.2版本:
·修正了一些错别字
·添加了 - 版本 - 段成README文件
·删除了yc_template命令模块的源文件
·脚本/ config.pl现在也接受Q和退出的命令
·在脚本中小bug修正/ config.pl
·在SRC /配置一些改进
·在src / glob.h改变了一些默认值
有什么新的0.7.9.5版本:
·此版本增加的.pm检测到脚本/ stats.pl。
·它修改的自述(新CVS的pserver地址)。
·所有的.cpp,.h和.tmpl文件现在使用的文档/ header.txt作为标题骨架有一个新的源头。
·一些小bug修正作了发言。
按类别搜索
热门软件
yChat
类似的软件
意见 yChat
按类别搜索
热门软件
-
SIP Express Router 3 Jun 15
-
IdentiCurse 20 Feb 15
-
Pygeon 19 Feb 15
-
Silky 3 Jun 15
-
ZMail 3 Jun 15
-
SmsDumper 3 Jun 15
-
PimpBNC 3 Jun 15
评论没有发现