It should be synchronized; this is invoked when an `AMMR` routes to a channel that doesn't exist yet, but has the pattern `(queue|topic):.*` - the channel (and in the case of Rabbit/Redis the producer) is created on-demand so we don't want concurrent threads both doing the create - the second will find the channel already exists.

This reminds me, though, that we have to get rid of the `Map` of channels in `MBAChannelResolver` because it can contain a stale channel (after an unbind).