zio / zio-amqp

ZIO-based AMQP client for Scala
Apache License 2.0
33 stars 20 forks source link

High Level and Low Level API's #201

Open yisraelU opened 2 years ago

yisraelU commented 2 years ago

Current design exposes connection and channel , which is not bad. I am thinking it might be valuable to have a High level api which i represented as a Consumer or a Publisher (or both) which would hide the channel and connection and just expose the consuming/publishing methods on it . Thinking this would also be a good place to implement a connection retry plus auto reconnect feature @svroonland Thoughts ?

svroonland commented 2 years ago

Yes I like that a lot. Was thinking about it a while back. The channel per thread design that rabbitmq does not necessarily make sense within a ZIO (fiber) environment and where we have better control over concurrency.

If you have an API design in mind, we could start with that.