We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
基于Project Reactor 编程库和 Spring5 Reactive Stack 进行异步化的响应式编程。请问对于这一方面有支持的想法吗
服务端目前处理是基于业务线程池化,进行同步阻塞业务再提交task返回。 如果服务端使用Reactive Data、Reactive Redis、WebFlux WebClient开发,可能可以免去新建另外的业务线程池。数据仅仅通过切换Eventloop流动变化,解放线程,而不是在从业务线程池中的一条进行不断的阻塞等待。 (表述可能有误,未能讲明我的意思)
目前Rpc协议可以根据request&correlation_id 实现唯一标识。 对于同一个连接,Client可以同时发出多个不同的ServicePackage,Server亦可以乱序响应多个不同的ServicePackage。
客户端: 目前的ProtobufRpcProxy 受限于同步阻塞的方式,在一条线程上发送请求,然后开始doWaitCallback。这样处理感觉类似Jdbc,不过是在Netty的基础上强行在业务线程阻塞等待(根据callbackDone标志)。是否没有发挥出当先NIO和目前Rpc协议的最大优势。
ProtobufRpcProxy
doWaitCallback
callbackDone
这个是目前的Rpc协议以及其实现所支持的,不过似乎在最终提供给业务开发方层面却没能够这么做(Blocking+NonBlocking=Blocking)
目前预编译需要另外加插件和配置进行生成编解码的文件,使用File/OutputStream/Compiler/MiniTemplater进行相关实现。使用注解处理器会不会更加方便呢,特别是对于Spring boot fatJar来讲。
根据你的源码。我大概编写出了一些实现的DEMO。目前对相关开发了解不深,写的比较挫 reactor-rpc4j jprotobuf-annotation-processor
The text was updated successfully, but these errors were encountered:
非常感谢反馈, reactor模式我们详细了解一下。 基于注解处理的确是友好一些, 也是不少开发者反馈使用asm来生成,提升效率,这个我们也会安排时间来分析一下
Sorry, something went wrong.
No branches or pull requests
Reactive Stack
基于Project Reactor 编程库和 Spring5 Reactive Stack 进行异步化的响应式编程。请问对于这一方面有支持的想法吗
服务端目前处理是基于业务线程池化,进行同步阻塞业务再提交task返回。
如果服务端使用Reactive Data、Reactive Redis、WebFlux WebClient开发,可能可以免去新建另外的业务线程池。数据仅仅通过切换Eventloop流动变化,解放线程,而不是在从业务线程池中的一条进行不断的阻塞等待。
(表述可能有误,未能讲明我的意思)
连接中多路复用
目前Rpc协议可以根据request&correlation_id 实现唯一标识。
对于同一个连接,Client可以同时发出多个不同的ServicePackage,Server亦可以乱序响应多个不同的ServicePackage。
客户端:
目前的
ProtobufRpcProxy
受限于同步阻塞的方式,在一条线程上发送请求,然后开始doWaitCallback
。这样处理感觉类似Jdbc,不过是在Netty的基础上强行在业务线程阻塞等待(根据callbackDone
标志)。是否没有发挥出当先NIO和目前Rpc协议的最大优势。这个是目前的Rpc协议以及其实现所支持的,不过似乎在最终提供给业务开发方层面却没能够这么做(Blocking+NonBlocking=Blocking)
预编译
目前预编译需要另外加插件和配置进行生成编解码的文件,使用File/OutputStream/Compiler/MiniTemplater进行相关实现。使用注解处理器会不会更加方便呢,特别是对于Spring boot fatJar来讲。
DEMO
根据你的源码。我大概编写出了一些实现的DEMO。目前对相关开发了解不深,写的比较挫
reactor-rpc4j
jprotobuf-annotation-processor
The text was updated successfully, but these errors were encountered: