1. A method for facilitating communications between components of a distributed application comprising the steps of: receiving a request by a middleware program from a first distributed application component, wherein a second distributed application component is identified in said request as a recipient of said request; identifying by the middleware program a publish/subscribe topic by identifying a first property of said second distributed application component; sending the request by the middleware program to a publisher associated with the first publish/subscribe topic; publishing by the publisher said request on the first publish/subscribe request topic; and in response to said publishing said request on the first publish/subscribe topic: sending the message to the second distributed application component, wherein the distributed application, the middleware program, the publisher and the publish/subscribe topic, are embodied in communicating computing devices.