Accelio

高性能异步 RPC 库
授权协议 BSD
开发语言 C/C++
所属分类 Web应用开发、 RPC/XMLRPC项目
软件类型 开源软件
地区 不详
投 递 者 郑乐池
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Accelio 是针对硬件加速优化的高性能异步可靠的消息传递工具和 RPC 库。 RDMA 以及其他传输实现(如 TCP / IP,共享存储器等)可以利用高效便捷的 API。

Accelio 旨在最大化消息和 CPU 并行性,同时最大限度地减少 CPU 争用和锁定,并实现零数据复制通信过程。 

主要特性:

  • 面向应用开发人员的简单而抽象的 API,专注于高性能异步通信

  • 可靠的消息传递(端到端)

  • 请求/回复(事务)或发送/接收模型

  • 连接和资源抽象,以最大化可扩展性和可用性

  • 零拷贝数据传输,可选内置内存管理

  • 旨在最大限度地发挥 RDMA,硬件卸载以及多核 CPU 和多线程应用程序的优势

  • 支持多种传输选项(RDMA,TCP,Shared-Memory 等)

  • 与常见事件循环机制(epoll,libevent,AC E等)集成

  • 快速事件通知,可选的等待轮询或组合型号,以实现最低的消息延迟

  • 本地支持服务和存储集群/横向扩展

  • 消息组合和批量消息处理优化

  • 主要数据结构 xio_transport 协议类型,目前只有rdma,包含协议名和该协议相关的所有操作函数 ,rdma模块中定义了一个xio_rdma_transport全局变量,实现了xio_transport中所有函数,同时还有一个struct xio_rdma_transport结构,该类型是对底层驱动接口的封装,同时包含了上下文,每个conn对象都包含一个单独的,该结构实际应该是和xio_

  • Accelio是一个开源的、高性能的、可靠的、异步消息传递接口。它当前通过对RDMA和TCP/IP的软件接口抽象,提供了一套xio接口。通过这个接口可以方便的使用RDMA并兼容已有的TCP网络。 Accelio的目标是提供一个简单好用、可靠、规模化、高性能的、能最大化利用CPU和网络基础设施的数据或消息传递中间件。 目前ceph已开始使用Accelio。在软件接口层面Accelio缩写为xio,x

 相关资料
  • 我从http://docs.oracle.com/javaee/7/tutorial/doc/servlets012.htm Java EE为servlet和过滤器提供异步处理支持。如果servlet或过滤器在处理请求时达到潜在的阻塞操作,它可以将该操作分配给异步执行上下文,并将与请求相关联的线程立即返回到容器,而不生成响应。阻塞操作在不同线程的异步执行上下文中完成,该线程可以生成响应或将请求分派

  • Uragano 旨在提供一个搭建和使用简单的高性能 RPC 框架。Uragano 是基于 netstandard2.0 开发的。Uragano 默认采用 DotNetty 实现远程通信,使用 MessagePack 进行编解码。

  • 本文向大家介绍详解Spring MVC的异步模式(高性能的关键),包括了详解Spring MVC的异步模式(高性能的关键)的使用技巧和注意事项,需要的朋友参考一下 什么是异步模式 要知道什么是异步模式,就先要知道什么是同步模式,先看最典型的同步模式: 浏览器发起请求,Web服务器开一个线程处理,处理完把处理结果返回浏览器。好像没什么好说的了,绝大多数Web服务器都如此般处理。现在想想如果处理的过程

  • 在日志中,我有将近1秒(~800毫秒)的值,为什么会有这么长的执行时间?

  • 本文向大家介绍Node.js 的异步 IO 性能探讨,包括了Node.js 的异步 IO 性能探讨的使用技巧和注意事项,需要的朋友参考一下 Python 和 Ruby 也有这样的框架,但因为在实际使用中会不可避免地用到含有同步代码的库,因此没能成长起来,而在 Node.js 之前,JavaScript 的服务器端编程几乎是空白,所以 Node.js 才得以建立起了一个所有 IO 均为异步的代码库。

  • 这是一套深入探讨 JavaScript 语言核心机制的系列丛书《你不懂JS: 异步与性能》