You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2021/09/01 09:29:30 UTC

[GitHub] [pulsar] lhotari commented on issue #10437: pulsar java reactor based client support

lhotari commented on issue #10437:
URL: https://github.com/apache/pulsar/issues/10437#issuecomment-909270873


   > @lhotari
   > Thank a lot for the invite. Do you have smth production ready? And also is there any issues that I can help with& =)
   > I implemented reactive facade in out company, but it hardly can satisfy others
   
   I've been busy getting the adapter library into a state where it fulfils the promise made [in the conference talk abstract](https://springone.io/2021/sessions/reactive-applications-with-apache-pulsar-and-spring-boot). Conference Driven Development. The code is already available at https://github.com/lhotari/reactive-pulsar and https://github.com/lhotari/reactive-pulsar-showcase .
   
   I have put most of the effort in refactoring the interfaces and packaging so there's not many unit tests currently. However, since it's a thin layer over the Pulsar Client, I don't have huge concerns that there would be major issues in the solution. 
   
   Eventually I solved the producer backpressure with a custom ["InflightLimiter" reactive operator](https://github.com/lhotari/reactive-pulsar/blob/master/reactive-pulsar-adapter/src/main/java/com/github/lhotari/reactive/pulsar/internal/adapter/InflightLimiter.java). It was the simplest approach for solving the producer backpressure in a reliable way. This works with the producer cache that is part of the solution. The limiter state is also shared via the cache and limits concurrent sending operations using the same cached producer.
   
   I haven't had the chance to properly organize the project yet. I'm planning to offer the project to be adopted by the Apache Pulsar project. I haven't yet checked what requirements there are for the IPRs and if accepting contributions make it harder to move it under Apache. I'd assume that it would be better to move it under Apache asap and then start accepting contributions.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org