2. You can't predict which parts of your system will be connected to user interface.
3. Here's the worst part: async messaging is viral. A service that depends on async service becomes async too.
You should be very cautions introducing async messaging to your systems. The only parts that should be allowed to be async are the ones that can afford to fail.
I spend good amount of time trying to work around these dumb enterprise patterns when building products on top of async APIs. You are literally forced to build inferior products just because someone thought that async messaging is so great. It's great for everybody, except the final user.
Async processing is not a virtue, it's a necessity for high load/high throughput systems.
The reason SOA failed many years ago is precisely the async message bus.