It's not clear to me what usecase you are trying to fulfill.
Like, at least for me, I reach for RabbitMQ when I am doing RPC or want reliable delivery of messages between systems.
I have a lot more experience with RabbitMQ for that usecase.
With Kafka, my experience with it is mostly the classic log processing usecase where we are processing syslog messages with Kafka and then Vector to process the syslog messages and transform them.
Like, you COULD use RabbitMQ to do log processing and COULD use Kafka to do RPC and reliable message delivery, but each seems to have a more comfortable fit doing the jobs I described and you don't spend a lot of time forcing them to go in ways that thet don't easily go.
So again, what is your system trying to accomplish, and what protocol matches what you are trying to do more?
I've seen a couple of your comments and it seems like you are trying to be both?