Much of how applications can be distributed is a type of offering by one or more cloud services. Companies such as Amazon and Microsoft offer services such as compute services to support elastic execution of your code remotely. If this code needs to interoperate with some else, that distributed communication needs to be performed in a way compatible with the cloud services you are using.
Products such as Azure offer abilities such as message queues and service buses to facilitate integrating subsystems in a distributed fashion.
To a certain extent, you can offload the creation and maintenance of parts of your system, such as message queues and services buses, to cloud services such as Azure. This lets you focus on the value that your system offers.
To support the cloud, and any of the services available in the cloud, a system must be designed in a distributed way. Much of this chapter discusses various practices that help deal with working with various cloud services. These services...