Chinaunix首页 | 论坛 | 博客
  • 博客访问: 161249
  • 博文数量: 171
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 1990
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-05 10:49
文章分类

全部博文(171)

文章存档

2011年(9)

2010年(162)

我的朋友

分类: 嵌入式

2010-09-07 18:05:17

这套开源即时通讯系统的名字叫 XEIM,由 开发,系统主要特点:

1、可简单二次开发


XEIM|XEIM C/S 版飞鸽传书,2010-8-30 更新 电子书 手册 源码 CSDN 下载频道

这套开源即时通讯采用 C++ 开发语言,开发环境是 Microsoft Visual C++ 6.0,无需任何 SDK 或者类库支持,只要安装了 Microsoft Visual C++ 6.0 的朋友,都可以马上编译通过。代码分为三个处理层,低层数据传输,第二层数据处理,第三次数据最终操作。二次开发的时候,只需要修改第三层即可,可以简单地在这套系统上添加自定义功能,包括 ERP 系统的即时提醒、即时反馈,CRM 系统的即时交流等,可以开发多种基于即时通讯的功能。关于二次开发的问题可以参考《XEIM 开发文档》。

2、系统稳定性

这个开源软件所使用的算法都经过严密测试,其中涉及到链表、映射等算法的问题,都是使用标准的 STL 库来解决的,另外 C++ 的最大问题就是内存管理,XEIM 对此问题做了很多相应测试,其中包括著名的内存泄漏检测软件 NuMega Bound Check,最大程度避免内存泄漏的出现。XEIM 功能虽少,但其最大特点就是稳定性。与其说 XEIM 是一条即时通讯系统,不如说他是一套即时通讯架构,提供可靠的底层即时通讯服务,开发者可以在这个稳定的基础上开发自定义运用。

3、支持大用户并发量

XEIM 采用了 Windows 的I/O完成端口(IOCP)作为第一层数据传输, (如果你打算学习 IOCP,请参考 Jeffery Richter 的《Advanced Windows》第三版,第15章I/O设备,里面有极好的关于完成端口的讨论以及对即将使用 API 的说明)。IOCP 提供了一个用于开发高效率和易扩展程序的模型。Winsock2 提供了对 IOCP 的支持,并在 WindowsNT 以上平台得到了完整的实现。单台服务器(Intel双核2.8,4G内存)理论上能支持15K以上并发用户,如果使用分布式的服务器的话,一定可以达到恐怖级别的负载能力。更多 IOCP 的信息可以参考。

阅读(273) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~