Providing software as the service is not the new computing practice. Some businesses, known as submission Service Providers (ASPs), were providing enterprises with software programs as the service by medium of Internet during 1990s. However, such endeavors at “utility computing” did not take off. This was largely attributed to need of adequate bandwidth. During that period broadband was neither bargain neither plentiful enough for utilities to deliver computing services with pace and reliability that enterprises relished with their localized machines.
Then came Web services (especially those based on XML-based SOAP1 message protocol) that represented the model of software delivery based on notion that pieces of software applications can be developed and then published to the registry where they can be dynamically discovered and consumed by other client applications over different transport protocols (e.g., HTTP, TCP/IP, etc.) irrespective of language used to develop those applications or platforms (e.g., operation systems, Internet servers) on which they are implemented. This was the spectacular enhancement over services provided by ASPs which relied on proprietary (and hence un-portable) software.
What is cloud computing?
There seems to be many delineations of cloud computing around. A study by McKinsey (the international administration conferring firm) discovered that there are 22 possible distinct delineations of cloud computing. In fact, no common standard or definition for cloud computing seems to exist (Clark, 2007 14-15). Amore routinely utilized delineation recounts it as clusters of distributed computers (largely vast facts and figures hubs and server farms) which provide on-demand assets and services over the networked intermediate (usually Internet). The “cloud” was probably inspired by IT text books' illustrations which depicted remote environments (e.g., Internet) as cloud images in order to conceal complexity that lies behind them.
Before advancing any further at this stage, the phrase of caution is necessary. One should not assume that cloud products suggested by any of overhead services are expected to work out-of-the-box. In some situations they might. Google Apps, the messaging and collaboration cloud stage from Google, is likely one good demonstration of those out-of-the-box products (even though it does need some grade of configuration nevertheless). Many of goods that are suggested by those three types of cloud services will require some degree of programming (by client or really cloud provider) in order to access functionality that lives in those services. Cloud providers will have conceived their own APIs (application programming interfaces) so that programs developers can use them to create client submissions in alignment to get access to that functionality. Currently, some of those APIs are proprietary; the topic which will be revisited subsequent when analyzing some of limitations of cloud computing. However, some are founded on open source measures such as lather or REST.
To illustrate how those services can be utilized and methods involved in their utilization (in the very simplified manner), the hypothetical demonstration can be given. Take, for demonstration, the typical university with an IT infrastructure that caters for desires of scholars, educating employees and management, study employees and programs developers ...