高性能的网络应用的C++库 Herm

fmms 13年前
     Herm是一套快速开发高性能的网络应用的C++库。比如开发网络游戏、即时通信、流媒体、文件下载、P2P等基于TCP/IP网络应用。    <br />    <br /> Herm包括三个组件:    <br />    <br /> (1)Utilities    <br />    <br /> 最基础的组件,提供线程、一读一写线程不加锁的ring buffer、二进制消息解析器、支持多态的对象管理器等。    <br />    <br /> (2)Socket    <br />    <br /> 用面向对象和泛型的方法抽象了TCP/UDP的Socket IOs;抽象了Win32 Select、Linux epoll和FreeBSD kqueue的多路复用API。统一了三者水平模式(Level Triggered)的语义(一套代码在Win32/Linux/FreeBSD运行结果是一样的),Linux上也支持了边缘模式(Edge Triggered)。    <br />    <br /> (3)Framework    <br />    <br /> 基于Utilities和Socket的简化开发网络应用的框架,抽象出Peer和Session对象。Peer和Session对象以及Framework实现的功能将在第2章介绍。    <br />    <br /> 三者调用关系:    <br />    <br /> Framework----->Socket---->Utils    <br />    <br /> Framework------------------->Utils    <br />    <br /> Herm目前仅支持Linux/Windows/FreeBSD 32bits平台。调用者可以基于不同的需求使用不同的组件。    <br />    <br />    <p><strong>项目主页:</strong><a href="http://www.open-open.com/lib/view/home/1325830636625" target="_blank">http://www.open-open.com/lib/view/home/1325830636625</a></p>