摘要

针对远程过程调用(RPC)系统无法支持响应式流编程(reactive stream)的问题,设计并实现基于响应式编程的RPC系统。采用基于响应式编程的Reactor-netty组件作为RPC底层通信框架,采用Zookeeper作为系统的注册中心,集成Kryo作为通讯序列化方式,设计并实现一种动态的负载均衡方案,针对java原生串行外设接口(SPI)功能进行优化,为RPC框架提供扩展机制。测试结果表明,该方案相较以Netty作为通信框架的RPC系统在性能方面有一定提升,该系统支持响应式方法的调用,适用于Java响应式编程的分布式项目开发。

全文