title: Howto set routing key for producer
body: <p>I'm having following testing scenario for Spring Cloud Stream based application. 
  I'm having one topic for my application with two queues. BindingKey for first queue is named "cities", for the second queue is the binding key "persons".</p>
  
  <p>Please howto set routing key for the Spring Cloud Stream Rabbit producer??? To distinquish where the message will be consumed?</p>
  
  <p>This is my binding configuration:</p>
  
  <pre><code>spring.config.name=streaming
  
  spring.cloud.stream.bindings.citiesChannel.destination=streamInput
  spring.cloud.stream.bindings.citiesChannel.group=cities
  spring.cloud.stream.rabbit.bindings.citiesChannel.consumer.durableSubscription=true
  spring.cloud.stream.rabbit.bindings.citiesChannel.consumer.bindingRoutingKey=cities
  
  spring.cloud.stream.bindings.personsChannel.destination=streamInput
  spring.cloud.stream.bindings.personsChannel.group=persons
  spring.cloud.stream.rabbit.bindings.personsChannel.consumer.durableSubscription=true
  spring.cloud.stream.rabbit.bindings.personsChannel.consumer.bindingRoutingKey=persons
  
  spring.cloud.stream.bindings.producingChannel.destination=streamInput
  </code></pre>
  
  <p>The only way howto distinguish where the message will be send(cities or persons queue) when publishing into <strong>producingChannel</strong> is through <strong>"spring.cloud.stream.bindings.producingChannel.producer.requiredGroups"</strong> property, but this is <strong>higly unusable</strong>. Because I don't wanna know anything about the queue where my message is going to land...This is AMPQ antipattern.</p>
  
  <p>I want nothing simplier then just have similar functionality like through <strong>RabbitTemplate.setRoutingKey(String routingKey)</strong> method when publishing into producingChannel...:-(</p>