Swipe to navigate through the chapters of this book
This chapter is about the technical side of cloud applications. It discusses implementing applications and services that are to be deployed on clouds. The chapter emphasizes Infrastructure as a Service (IaaS) implementations, although much of the material applies also to Platform as a Service (PaaS) implementations. The approach is high-level, discussing architecture rather than code strategies. The strategies also apply to building Software as a Service (SaaS) applications for cloud deployment but not specific strategies, such as multitenancy, for SaaS. In addition, public clouds are assumed. Private and community implementers will also benefit from the material here, although their implementations may be somewhat simpler.
Please log in to get access to this content
To get access to this content you need the following product:
Porting software means to modify a piece of software to execute in a different environment. Ported software’s operation is expected to be identical to its operation in the old environment. Usually, porting changes as little of the original code as possible.
The terms CPU, processor, and core are similar and often used interchangeably, and meanings have shifted with the progress of hardware. However, they are not strictly the same. Central processing unit (CPU) traditionally has referred to a collection of chips and other components that process instructions and data. These consist of arithmetic and logic evaluation, instruction fetching, interrupt handling, and input and output. All these components eventually shrank to a single chip called a CPU or a processor. As chips became denser, more and more functionality crowded onto single chips. Eventually, additional arithmetic and logic evaluation units, cores, appeared on single CPU chips. These cores are not full CPUs because they share functionality with other cores on the same chip, but they have many of the capabilities of a complete CPU. Servers often have several processor chips each with multiple cores. Mobile devices are usually limited to a single processor chip that may have many cores. Sometimes the word processor refers to the entire processing capability of a virtual or physical computer, which may include several processing chips with multiple cores. You should be aware that the terms are used loosely.
An HTTP server is a more precise name for a server that receives and replies to HTTP. A web server could, conceivably, be based on a non-HTTP protocol, but that happens rarely, if ever.
SOAP used to be an acronym for Simple Object Access Protocol, but the SOAP authors came to realize that the protocol is for service messaging that often does not involve objects. Also, although the committee did not mention it, most developers say SOAP is far from simple. To avoid misconceptions, the committee declared that SOAP is just a name, not an acronym. For more details, see http://lists.w3.org/Archives/Public/xmlp-comments/2005Sep/0002.html . Accessed June 2015.
The Internet of Things (IoT) refers to the appearance of things, such as heating and ventilation controls or security cameras, on the network. Many people project rapid growth in the IoT in the next few years and the integration of the IoT with traditional applications.
An HTTP server is also a web server. Here, when HTTP is important in the discussion, I use the term HTTP server. When HTTP fades into the background, I use the more common term, web server. An Internet web server that does not use HTTP is possible, but it would not work with most of the World Wide Web.
For a full discussion of CAP, see Marvin Waschke, Cloud Standards. Apress, 2012, pp. 124–131.
Docker is the most mentioned container project today. It is an open source Linux-based project that is supported by a company named Docker. See https://www.docker.com/ , accessed July 2015. A widely supported group has formed to write an operating system and platform–independent standard for containers. See www.infoworld.com/article/2938638/application-virtualization/docker-donates-its-container-specs-for-opc-open-standard.html , accessed July 2015.
- Tricky Business
- Sequence number
- Chapter number
- Chapter 13