关闭

常用开源服务器库和中间件

4325人阅读 评论(0) 收藏 举报
分类:

常用开源服务器库:

•asio、•libevent、、libev•muduo 、gevent 、libuv、Java Netty、Chaos - 开源的c++网络事件库、zeromq

arioTCP: Multi Libvent TCP Server 一个高性能的TCP服务,zsummer


(1)ACE

庞大、复杂,适合大型项目。开源、免费,不依赖第三方库,支持跨平台。

http://www.cs.wustl.edu/~schmidt/ACE.html

 

(2)Asio

Asio基于Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。

开源、免费,支持跨平台。

http://think-async.com/

 

(3)POCO

POCO C++ Libraries 提供一套 C++ 的类库用以开发基于网络的可移植的应用程序,功能涉及线程、线程同步、文件系统访问、流操作、共享库和类加载、套接字以及网络协议包括:HTTP、 FTP、SMTP 等;其本身还包含一个 HTTP 服务器,提供 XML 的解析和 SQL 数据库的访问接口。POCO库的模块化、高效的设计及实现使得POCO特别适合嵌入式开发。在嵌入式开发领域,由于C++既适合底层(设备I/O、中断处理等)和高层面向对象开发,越来越流行。

http://pocoproject.org/

 

(4)libevent

Libevent是一个轻量级的开源高性能网络库,从它的官网标题:libevent-an event notification library就能知道它的机制是采用事件触发,封装了以下三种事件的响应:IO事件,定时器事件,信号事件。select模型来实现跨平台的操作,Windows环境下支持IOCP。Google的开源WEB浏览器Chromium在Mac和Linux版本中,也使用了Libevent,足见该库的质量。

http://libevent.org/

 

(5)libev

libev和libevent很像,按照作者的介绍,可以作为libevent的替代者,能够提供更高的性能。

libev是一个高性能事件循环,所实现的功能就是一个强大的reactor。

http://software.schmorp.de/pkg/libev.html

 

(6)c++ sockets library

封装了sockets C API的C++类库。

支持SSL, IPv6, tcp 和 udp sockets, sctp sockets, http协议, 高度可定制的错误处理。

http://www.alhem.net/Sockets/

 

(7)libcurl

libcurl是免费的轻量级的客户端网络库,支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet, TFTP. 支持SSL, HTTP POST, HTTP PUT, FTP上传, HTTP form上传,代理,cookies, 用户名与密码认证。

如果你开发的是客户端,libcurl是一个不错的选择。

http://curl.haxx.se/libcurl/

(8)HP-Socket 

HP-Socket是一套通用的高性能 TCP/UDP 通信框架,包含服务端组件、客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP 通信系统,提供 C/C++、C#、Delphi、E(易语言)、Java、Python 等编程语言接口。HP-Socket 对通信层实现完全封装,应用程序不必关注通信层的任何细节;HP-Socket 提供基于事件通知模型的 API 接口,能非常简单高效地整合到新旧应用程序中。
  为了让使用者能方便快速地学习和使用 HP-Socket,迅速掌握框架的设计思想和使用方法,特此精心制作了大量 Demo 示例(如:PUSH 模型示例、PULL 模型示例、性能测试示例以及其它编程语言示例)。HP-Socket 目前运行在 Windows 平台,将来会实现跨平台支持。


http://code.csdn.net/news/2820158  (细数百度公司的知名开源项目)

http://bgcc.baidu.com/index.html (百度通用通信组件)


中间件:

ACE、ICE、Tuxedo、IBM MQSeries


开源游戏:coeus

http://wiki.powman.org/pages/viewpage.action?pageId=4849675

3
0
查看评论

ESP8266模块调试易语言源码

  • 2017-03-10 11:31
  • 900KB
  • 下载

基于MQTT协议实现(推送系统)

  • 2014-10-30 09:37
  • 230KB
  • 下载

MQTT Essentials – A Lightweight IoT Protocol epub

  • 2017-11-29 18:33
  • 15.82MB
  • 下载

6款开源中间件

Middleware tends to be the unsung hero of technical infrastructure. Middleware doesn’t prompt great debates, like Windows vs. Apple vs. Linux OS debat...
  • fishmai
  • fishmai
  • 2016-07-18 20:38
  • 3031

开源数据库中间件对比

本文比较了360(Atlas)、美团点评(DBProxy)、Kingshard、携程(DAL)、蘑菇街(TSharding)、阿里(TDDL)、当当(Sharding-JDBC 360)、MyCAT 共8种当下流行的开源数据库中间件,从总体来看mycat占据优势
  • oDaiLiDong
  • oDaiLiDong
  • 2017-04-16 14:52
  • 4602

MyCat:开源分布式数据库中间件之数据库分片和读写分离配置

MyCat:开源分布式数据库中间件之数据库分片和读写分离配置
  • qq_22075041
  • qq_22075041
  • 2017-08-20 21:53
  • 2743

开源数据库中间件:Kingshard

Kingshard是一个由Go语言开发的高性能MySQL Proxy项目,kingshard在满足基本的读写分离的功能上,致力于简化MySQL分库分表操作,能够让DBA通过kingshard轻松平滑地实现MySQL数据库扩容,kingshard的性能大约是直连MySQL性能的80%以上,而且自从ki...
  • linux_shuai
  • linux_shuai
  • 2016-05-05 14:44
  • 660

开源MQ消息中间件技术-AQMP

AMQP协议介绍 AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。 AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。 AMQP在消息提供者...
  • doitsjz
  • doitsjz
  • 2017-05-16 20:50
  • 743

阿里中间件——diamond

一、前言        最近工作不忙闲来无事,仔细分析了公司整个项目架构,发现用到了很多阿里巴巴集团开源的框架,今天要介绍的是中间件diamond,访问了对应开发团队的博客(http://jm-blog.aliapp.com),认真学习了一下diamond,下...
  • zh_winer
  • zh_winer
  • 2015-12-24 16:00
  • 8294

TUXEDO SALT简介

 如图我们可以看到SALT相当于 TUXEDO 服务的一个代理,调用过程可以分解为如下几步: 接收所有的Web Service客户端的调用请求 把对应的SOAP请求转换成TUXEDO内部调用请求 分发给相应的TUXEDO SERVICE并接受处理结果 把结果转...
  • woohooli
  • woohooli
  • 2007-09-13 21:52
  • 3548
    个人资料
    • 访问:3014192次
    • 积分:35217
    • 等级:
    • 排名:第143名
    • 原创:243篇
    • 转载:517篇
    • 译文:22篇
    • 评论:119条
    最新评论