title: In Kafka, how producers receive response from consumers?
body: <p>In a very simple use case in old client/server model, for requesting some info from a database server, I would create a connection, send the request (query) and receive the response.</p>
  <p>How is the Kafka way of doing such a request?</p>
  <p>For instance, let's suppose I have a customer ID and want to retrieve the user info that's stored somewhere in the Kafka infrastructure, do I have to publish in one topic and consume the info from another topic (act as producer/consumer)?</p>
  <p>Is this the supposed way of using Kafka?</p>
  <p>EDIT 1:</p>
  <p>In order to elaborate what I'm trying to achieve I'm going to try to clarify the operation:</p>
  <p>1 - Some producer insert a costumer in the Kafka &quot;customers&quot; topic.
  2 - Some consumer reads this topic, connect to a database and insert it the database.
  3 - Due to business constraints, the Kafka logs are kept only for a month.
  4 - After a month, some client attached to Kafka infrastructure wants to retrieve the information of a specific customer that are located in the database (it does not even know about a database).</p>
  <p>Would it make sense for this client to publish a message in a specific topic, let's say &quot;i-want-a-costumer-info&quot; and then waits for a response in a topic &quot;customers-info&quot; filtering by the customer ID? In this way, the client I mention in (4) would be acting both as a producer and a consumer.</p>