Service Oriented Computing’
Abstract’ Computers have become an unavoidable
part of life. Any field you name be it research, banking enterprises, computers are needed everywhere. As the use of computers in our day-to-day life increases, so does the need of the computing resources. For companies like Google and Microsoft, tackling the resources as and when they need it is not a problem. But when it comes to smaller enterprises, affordability becomes a huge factor. Problems like machines failure, hard drive crashes, software bugs, etc increases as the infrastructure increases. This might be a big headache for such a community. Cloud Computing offers a solution to this situation. Cloud computing is a paradigm shift in which computing is moved away from personal computers and even the individual enterprise application server to a ‘cloud’ of computers. Cloud computing is basically an Internet-based network made up of large numbers of servers – mostly based on open standards, modular and inexpensive. Clouds contain vast amounts of information and provide a variety of services to large numbers of people. This paper describes cloud computing, a computing platform based upon internet. The paper defines cloud, outlines the cloud architecture and its major components.
I INTRODUCTION TO CLOUD COMPUTING
Cloud Computing can be broadly defined as several different methods to deliver information or services to customers who pay for what they use.
Cloud computing is the style of computing where massively scaled IT related capabilities are provided as a service across the internet to multiple external customers and are billed by consumption. Many cloud computing providers have popped up and there is a considerable growth in the usage of this service. Google, Microsoft, Yahoo, IBM and Amazon have started providing cloud computing services. Amazon is the pioneer in this field. Smaller companies like SmugMug, which is an online photo hosting site, has used cloud services for the storing all the data and doing some of its services.
Thus, it is a new mechanism to deliver products
from a producer to a consumer. Of course, we
have a consumer who wants or needs to utilize information.
Who is the customer?
The customer can be an external person or company who is paying for a service or information. The customer could also be an internal customer, such as the application owner who is using services that another department within the same company is offering, who is being charged for consumption. This is where we come to know about the types of cloud computing:
1) Public Cloud
2) Private Cloud
3) Hybrid cloud
Cloud computing implies the services provided over the internet as both the hardware and system software on the Data-centre’s provided by service provider. Cloud computing comprises following two levels:
‘ front end users: customers or users using those service on their device
‘ back end users: service provider or vendor managing the services
Part of the confusion in cloud computing is that there are two completely different customers for two different types of clouds. One type of cloud the customer gets information and services externally (public cloud) and the other type gets theirs internally (private cloud). With the public cloud, the customer owns no storage or server and has no capital expenditures; they simply want to buy what they need on demand. The other customer is an internal customer so the company spends capital to either provide services and data internally, or spends capital to provide the servers, storage, networking, and applications (capital spending) for an external customer. In addition, there are many different ways to use the cloud. Take the point-of-view of the producer. The producer can be an internal department offering services, which is called a private cloud. The producer can also be an external company that is supplying a server, storage, rack space, and electricity, and essentially supplies the capital for the information or service. As an example, let’s say that I am a product manager, and I have an application that I want to put into production. What do I need to put together to roll out this product? Well, Indeed to find a server and storage for the data. I also need to find rack space for the server, and I need electricity, to name the big items. Basically, a capital investment is made to put my application into production in my company’s data center. With an external (public) cloud, I do not do any of these things; someone else builds the space and provides the capital investment. Thus, we have a new way of doing business where the customer buys on demand, and the supplier charges for what the customer uses. This concept is similar to cable television on demand, I only pay for the movies that I want to watch. At issue are the details of providing the data to the users, and securing that data. A hybrid cloud environment consisting of multiple internal and/or external providers, will be typical for most enterprises”. A hybrid cloud can describe configuration combining a local device, such as a Plug computer with cloud services. It can also describe configurations combining virtual and physical, collocated assets’for example, a mostly virtualized environment that requires physical servers, routers, or other hardware such as a network appliance acting as a firewall or spam filter.
The Cloud is a metaphor for the Internet, derived from its common depiction in network diagrams
(or more generally components which are managed by others) as a cloud outline. The underlying concept dates back to 1960 when John McCarthy opined that “computation may someday be organized as a public utility” (indeed it shares characteristics with service bureaus which date back to the 1960s) and the term The Cloud was already in commercial use around the turn of the 21st century. Cloud computing solutions had started to appear on the market, though most of the focus at this time was on Software as a service. 2007 saw increased activity, including Goggle, IBM and a number of universities embarking on a large scale cloud computing research project, around the time the term started gaining popularity in the mainstream press. It was a hot topic by mid-2008 and numerous cloud computing events had been scheduled.
III HOW IT’S WORK?
Let’s say you’re an executive at a large corporation. Your particular responsibilities include making sure that all of your employees have the right hardware and software they need to do their jobs. Buying computers for everyone isn’t enough — you also have to purchase software or software licenses to give employees the tools they require. Whenever you have a new hire, you have to buy more software or make sure your current software license allows another user. It’s so stressful that you find it difficult to go to sleep on your huge pile of money every night.
Soon, there may be an alternative for executives like you. Instead of installing a suite of software for each computer, you’d only have to load one application. That application would allow workers to log into a Web-based service which hosts all the programs the user would need for his or her job. Remote machines owned by another company would run everything from e-mail to word processing to complex data analysis programs. It’s called cloud computing, and it could change the entire computer industry.
1. Agility improves with users’ ability to re-provision technological infrastructure resources.
2. Virtualization technology allows servers and storage devices to be shared and utilization be increased. Applications can be easily migrated from one physical server to another.
3. Reliability is improved if multiple redundant sites are used, which makes well-designed cloud computing suitable for business continuity and disaster recovery.
4. Performance is monitored, and consistent and loosely coupled architectures are constructed using web services as the system interface.
5. Maintenance of cloud computing applications is easier, because they do not need to be installed on each user’s computer and can be accessed from different places.
The cloud model has been criticized by privacy advocates for the greater ease in which the companies hosting the cloud services control, and thus, can monitor at will (whether permitted or not by their customers), the communication between the host company and the end user, as well as the user’s stored data. Instances such as the secret NSA program, working with AT&T, and Verizon, which recorded over 10 million telephone calls between American citizens, causes uncertainty among privacy advocates, and the greater powers it gives to telecommunication companies to monitor user activity.
In order to obtain compliance with regulations including FISMA, HIPAA, and SOX in the United States, the Data Protection Directive in the EU and the credit card industry’s PCI DSS, users may have to adopt community or hybrid deployment modes that are typically more expensive and may offer restricted benefits. This is how Google is able to “manage and meet additional government policy requirements beyond FISMA” and Rackspace Cloud or QubeSpace are able to claim PCI compliance.
As with other changes in the landscape of computing, certain legal issues arise with cloud computing, including trademark infringement, security concerns and sharing of proprietary data resources.
The Electronic Frontier Foundation has criticized the United States government for considering during the Megaupload seizure process that people lose property rights by storing data on a cloud computing service.
Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.
When talking about a cloud computing system, it’s helpful to divide it into two sections: the front end and the back end. They connect to each other through a network, usually the Internet. The front end is the side the computer user, or client, sees. The back end is the “cloud” section of the system.
The front end includes the client’s computer (or computer network) and the application required to access the cloud computing system. Not all cloud computing systems have the same user interface. Services like Web-based e-mail programs leverage existing Web browsers like Internet Explorer or Firefox. Other systems have unique applications that provide network access to clients.
On the back end of the system are the various computers, servers and data storage systems that create the “cloud” of computing services. In theory, a cloud computing system could include practically any computer program you can imagine, from data processing to video games. Usually, each application will have its own dedicated server.
A central server administers the system, monitoring traffic and client demands to ensure everything runs smoothly. It follows a set of rules called protocols and uses a special kind of software called middleware. Middleware allows networked computers to communicate with each other.
f a cloud computing company has a lot of clients, there’s likely to be a high demand for a lot of storage space. Some companies require hundreds of digital storage devices. Cloud computing systems need at least twice the number of storage devices it requires to keep all its clients’ information stored. That’s because these devices, like all computers, occasionally break down. A cloud computing system must make a copy of all its clients’ information and store it on other devices. The copies enable the central server to access backup machines to retrieve data that otherwise would be unreachable. Making copies of data as a backup is called redundancy.
A cloud client consists of computer hardware and/or computer software that relies on cloud computing for application delivery, or that is specifically designed for delivery of cloud services and that, in either case, is essentially useless without it. Examples include some computers, phones and other devices, operating systems and browsers.
Cloud application services deliver software as a service over the internet eliminating the need to install or run the same on the clients computer thus simplifies maintenance and support. This software as a service is explained under the heading ‘services’.
Cloud platform services deliver a computing platform. It facilitates deployment of applications without the cost and complexity of buying and managing the hardware/software layers.
Cloud infrastructure services deliver a computing infrastructure typically platform virtualization environment as a service.
The server layer consist of computer hardware/computer software products that are specifically designed for the delivery of the cloud services, including multi core processors etc.
1) SOFTWARE as a SERVICE
Target Customer: End-User
On-demand access to a wide range of Office and Productivity software such as Email, blogs, wikis, forums, etc.
Web Hosting (Google Sites)
Source code control
‘ Single or multi-tenant model
‘ Centralized feature and system upgrades
‘ Mobility, flexibility, wide range of options
‘ Can include almost any IT service
Examples: Salesforce.com, Microsoft Federal BPOS, Gmail, Netsuite, ADP, Yahoo email
This type of cloud computing delivers a single application through the browser to thousands of customers using a multitenant architecture. On the customer side, it means no upfront investment in servers or software licensing; on the provider side, with just one app to maintain, costs are low compared to conventional hosting. Salesforce.com is by far the best-known example among enterprise applications, but SaaS is also common for HR apps and has even worked its way up the food chain to ERP, with players such as Workday. And who could have predicted the sudden rise of SaaS “desktop” applications, such as Google Apps and Zoho Office?
2) PLATFORM as a SERVICE
Target Customer: Software Developer
Environment in which applications can be developed, tested, staged, deployed, hosted and run
Backup and Fail-over Environments
Standard protocols and common technologies for web app development
Programmable User Interface, Integrated Content Libraries, Real-time analytics & web applications, real-time workflow and approvals, Granular Security & Sharing
‘ Multi-tenant deployment architecture
‘ ‘Infinitely scalable’ ‘ one to millions of users
‘ Interacts at the Source Code level
‘ Total abstraction from infrastructure
Examples: force.com, Microsoft Azure, Google App Engine, Yahoo APIs.
This form of cloud computing delivers development environments as a service. You build your own applications that run on the provider’s infrastructure and are delivered to your users via the Internet from the provider’s servers. Like Legos, these services are constrained by the vendor’s design and capabilities, so you don’t get complete freedom, but you do get predictability and pre-integration. Prime examples include Salesforce.com’s Force.com, Coghead and the new Google App Engine. For extremely lightweight development, cloud-based mashup platforms abound, sas Yahoo Pipes or Dapper.net.
3) INFRASTRUCTURE as a SERVICE:
Target Customer: System Administrators
Bandwidth, Networks, Operating System, File System, Servers & Storage
Backup power, networks and failover sites
Dedicated team of experts monitoring the system on a 24/7 basis
‘ Implementation is hidden, changeable
‘ Often uses Virtualization and Shared Storage (SAN or Cluster)
‘ Similar to utility Computing or Grid Computing
Examples: Amazon EC2, S3 and EBS, Linode, Rackspace Cloud, Terramark Enterprise Cloud, IBM CloudBurst, Nebula IaaS
A cloud application leverages cloud computing in software architecture, often eliminating the need to install and run the application on the customer’s own computer, thus alleviating the burden of software maintenance, ongoing operation, and support. For example:
Peer-to-peer / volunteer computing (BOINC, Skype)
Web applications (Webmail, Facebook, Twitter, YouTube, and Yammer)
Security as a service (MessageLabs, Purewire, ScanSafe, Zscaler)
Software as a service (Google Apps, Salesforce,Nivio,Learn.com, Zoho, BigGyan.com)
Software plus services (Microsoft Online Services)
o Content distribution (Bit Torrent, Amazon CloudFront)
o Synchronization (Drop box, Live Mesh, Spider Oak, ZumoDrive
ATTRIBUTES OF CLOUD COMPUTING
There are five key Cloud attributes:
1. Shared / pooled resources
2. Broad network access
3. On-demand self-service
4. Scalable and elastic
5. Metered by use
Many a times searching a video on YOUTUBE it might have happened that video could not be played due to software integration problems. One reason is that adobe flash player is not up-to-date on your system. So first you have to download the latest software and install it.
Thus cloud computing gets you off these issues and saves your time and money. You need not have any supporting software to run any application. The service provider provides the configuration required to run any application on your system. Moreover you also need not have high processing hardware. You only need a device (PC/MOBILE/IPHONE/IPAD etc) and web browser to access a cloud and run your application.
Suppose you have a low cost mobile which does not support PDF file. Thus any PDF cannot be read on that mobile (or any device). Thus if you have internet access then you can access file from the cloud in which you are registered you can read the data of that PDF file on the CLOUD DATABASE.
Cloud Computing can be used easily in one`s personal life as well as in one ‘business life. It’s highly likely that you already use at least one, if not many, cloud computing services. Additionally, as you explore the services we describe here, you may find that some of them may make your life easier, or help you in promoting, managing, or operating your business. That’s what cloud computing is for.
In my opinion Cloud Computing will massively change the IT future it may be application development, database or business as Cloud Computing platforms mercificare native Internet scale application development and operation.
1. How it works
3. PDF from NASA–
Cloud Computtiing:: Gettttiing Beyond tthe Hype BY :Linda Y.. Curetton
CIO,, National Aeronautics and Space Administration
Tuesday May 4,, 2010
4. White Paper from global knowledge—
Cloud Computing: What It Is and What It Can Do for You.
...(download the rest of the essay above)