Architecting Cloud Computing Solutions
上QQ阅读APP看书,第一时间看更新

Cloud computing history

For our purposes, the first age of computing was the 1970s when the focus was on big infrastructure. Green-screen terminals, in vogue back then, eventually evolved into personal computers. Networks went from a centralized, hierarchical design to a decentralized design. Decentralization moved the processing closer to the user meaning applications moved from thin client (processing on the server) to thick client (processing on the user/client side). Green screens were tightly coupled interfaces to the data-laden backend. Decentralization enabled developers to track process steps and state information on the server side while allowing client-side computers to do much more of the processing. The period was the birth of client-server architectures, which are central to today's modern technology-driven business.

With much of the processing moving closer to the actual user, the connectivity of the user became the main limitation. Lack of connectivity led to the second age of computing. The 80s heralded the rise of the internet. Better connectivity between distributed computing systems quickly led to the development and near ubiquity of easy-to-use, visually attractive computing devices. Businesses moved quickly in exploiting this new Internet Protocol (IP)-based connectivity as local area networks expanded to globally inter-connected wide area networks. Users, however, became frustrated with poor application performance, network latency, and application timeouts. Developers were again forced to place more compute load closer to the user. Tightly coupled centralized applications did not have the functions, flexibility, or the responsiveness of a well-designed well-built decentralized application. Additionally, the late 80s gave way to a major shakeup in the telecommunications industry. The then monopolized local exchanges were mandated to separate into independent competing companies. The competition forced faster innovation, lower costs, and higher levels of reliability and service.

The following diagram depicts the various cloud computing phases:

As connectivity and services improved and competition continued to drive reliability up and costs down, the third age of computing began. The amount of data generated exploded. Wireless began to take off, leading to things such as widespread cell phone adoption and mobility solutions. Google revolutionized the internet searches by automating it with MapReduce, no-SQL, and the AppEngine (an early Platform-as-a-Service). During the 90s, the fast growth of wireless networks and the rapid adoption of mobile devices led to the rebirth of the thin client in the form of a browser. Better connectivity and browser-based mobile application interfaces enabled much of the computing to remain on the server side with content and responses sent to the client's browser. Servers began utilizing a newer form of virtualization (IBM started a form of virtualization on mainframes in 1964) improving resource utilization and changing the way applications are developed and deployed.

Today, applications are loosely coupled architectures that can take advantage of modern elastic and scalable infrastructures. As mentioned earlier, virtualization has been around for a while taking different forms. The real innovation came in the form of modernized billing systems and economic models. The true innovation is that we can now purchase a fraction of a core or a fraction of a GB of RAM, consume it for a fraction of a minute and turn it off and not pay for it until we need it again. The real power of modern computing is to be able to buy what you need, when you need it, and give it back when finished. The model has led to entirely new business ideas, business strategies, operational models, economic models, and entirely new categories of business.

Technology innovations typically run in 10-year hills where we climb through a level of adoption and face significant challenges that level off adoption until innovation resolves the current challenges, then we start to climb the next hill of adoption. The second hill is usually the largest increase in adoption with major game-changing innovation usually occurring in the third hill that restarts the clock. Situational awareness is critical for business leaders. Which hill are you climbing? Are you early adopting with significant challenges ahead? Is your company late to the game and about to be washed out by innovation? Leaders must always offset risk with economics.

Leaders face many challenges as they try to modernize their business and business models. For example, an executive driven initiative to reduce costs through the adoption of cloud services renders current traditional infrastructure-centric security models worthless. To remain relevant, enterprise security professionals must now adopt a modern data-centric security model. Technical teams traditionally funded as an overhead cost must transform to become trusted revenue-enabling information technology partners to business leaders. To stay relevant, traditional technologists must now update, not only their technical skills but also their non-technical skills. This updated approach includes business risk, economics, finance, and strategy. Innovations such as cloud computing that are driven by economic innovation are lasting and force everyone to adapt. Every known business model is affected by cloud computing: strategy, operations, security, economics, risk, deployment, and more.

Cloud computing, also known as IT-as-a-Service, was quickly adopted due to its ability to deliver value in three significant market sectors.

The first, and most significant by revenue standards, is the software marketplace where it was able to reduce software consumption costs, especially in the area of application and software licensing, and reduced software application support costs. More importantly, this is accomplished while simultaneously improving business backend system capabilities.

The second marketplace was really in the application development arena. Application development platforms, also known as integrated development environments, were delivered with the embedded support of multiple languages and frameworks. The Platform-as-a-Service model exists in multiple technology environments, with greater flexibility. Environment flexibility opened up choice, reduced vendor lock-in fears, and also created an ability to auto-scale applications based on the number of actual users.

The third-most significant IT-as-a-Service marketplace was infrastructure. Infrastructure enabled global scale at an affordable price point. Here is where modern converged networks are used to deliver variable IT capacity pools. It also ushered in the concepts of information technology self-service, and on-demand capacity.

All these models delivered dramatic improvements in cost control, flexibility, speed to market, reliability, and resilience.

The following diagram depicts the various components of IT-as-a-Service: