Azure best practice #3 is to apply SOA principles to your cloud applications. The core ideas of SOA apply equally strongly to the cloud:
- Software components are loosely coupled.
- Message-based programs do a lot of the work.
- Boundaries of communication/reliability/security/transactions are a key consideration in solution architecture.
- Use of standard protocols and message formats provides broad interoperability.
- Stateless service development is encouraged which facilitates easy load balancing.
- Communication is presumed to be expensive.
- Coarse-grained interfaces are preferred over chatty interfaces.
This isn't a recommendation to use SOAP, however. See Best Practice #4 for a discussion of SOAP vs. REST.