0% found this document useful (0 votes)
165 views25 pages

1.3.SOA and Cloud Computing

SOA and cloud computing both rely on a service-oriented approach and loose coupling between services. SOA focuses on defining business services that can be combined to create business applications, while cloud computing provides layered services like infrastructure, platform, and software. While SOA is used for application architecture, cloud computing delivers IT services. The services in both can be reused. SOA uses web services standards that enable cloud computing to implement applications using a SOA approach.

Uploaded by

pshrey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
165 views25 pages

1.3.SOA and Cloud Computing

SOA and cloud computing both rely on a service-oriented approach and loose coupling between services. SOA focuses on defining business services that can be combined to create business applications, while cloud computing provides layered services like infrastructure, platform, and software. While SOA is used for application architecture, cloud computing delivers IT services. The services in both can be reused. SOA uses web services standards that enable cloud computing to implement applications using a SOA approach.

Uploaded by

pshrey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

SOA and Cloud Computing

Dr. B.N.Gohil - SVNIT 1


Technological drivers for Cloud
• The success of cloud computing is due to service-
oriented architecture (SOA), virtualization,
multicore technology, memory and storage
technologies, networking technologies, Web 2.0,
and Web 3.0.
• Also, the advancements in programming models,
software development models, pervasive
computing, operating systems (OSs), and
application environment have contributed to the
successful deployment of various clouds.

Dr. B.N.Gohil - SVNIT 2


SOA – Service Oriented Architecture
• SOA is a flexible set of design principles and standards used
for systems development and integration.
• A properly implemented SOA-based system provides a
loosely coupled set of services that can be used by the
service consumers for meeting their service requirements
within various business domains.
• Cloud computing is a service delivery model in which
shared services and resources are consumed by the users
across the Internet just like a public utility on an on-
demand basis.
• SOA is used by enterprise applications, and cloud
computing is used for availing the various Internet-based
services.

Dr. B.N.Gohil - SVNIT 3


• Different companies or service providers may offer
various services such as financial services, health-care
services, manufacturing services, and HR services.
• Various users can acquire and leverage the offered
services through the Internet.
• The programs running on cloud could be implemented
using SOA-related technologies.
• A cloud user can combine the services offered by a
cloud service provider (CSP) with other in-house and
public cloud services to create SOA-based composite
applications.

Dr. B.N.Gohil - SVNIT 4


Service
• Definition: The performance of work (a function) by
one for another.

• The notion of Service also includes:

➢The capability to perform work for another.


➢The specification of the work offered for another.
➢The offer to perform work for another.

• In SOA, services are the mechanisms by which needs


and capabilities are brought together.

Dr. B.N.Gohil - SVNIT 5


Example
• An electric utility has the capacity to generate and distribute
electricity (the underlying capability). The wiring from the
electric company’s distribution grid (the service) provides the
means to supply electricity to support typical usage for a
residential consumer’s house (service functionality), and a
consumer accesses electricity generated (the output of
invoking the service) via a wall outlet (service interface). In
order to use the electricity, a consumer needs to understand
what type of plug to use, what is the voltage of the supply,
and possible limits to the load; the utility presumes that the
customer will only connect devices that are compatible with
the voltage provided and load supported; and the consumer
in turn assumes that compatible consumer devices can be
connected without damage or harm (service technical
assumptions).

Dr. B.N.Gohil - SVNIT 6


Cont.
• A residential or business user will need to open
an account with the utility in order to use the
supply (service constraint) and the utility will
meter usage and expects the consumer to pay for
use at the rate prescribed (service policy). When
the consumer and utility agree on constraints and
polices (service contract), the consumer can
receive electricity using the service and the
consumer can have payment sent (e.g. a cash
payment or electronic funds transfer) to the
utility (reachability).

Dr. B.N.Gohil - SVNIT 7


What is Web Services?
• “Software application identified by a URI, whose
interfaces and bindings are capable of being defined,
described, and discovered as XML artifacts” – W3C
Web Services Architecture Requirements, Oct. 2002
• “Programmable application logic accessible using
Standard Internet Protocols…” – Microsoft
• “An interface that describes a collection of operations
that are network accessible through standardized XML
messaging …” – IBM
• “Software components that can be spontaneously
discovered, combined, and recombined to provide a
solution to the user’s problem/request … “ - SUN

Dr. B.N.Gohil - SVNIT 8


User’s View
• Software components designed to provide specific
operations (“services”) accessible using standard
Internet technology
• Not tied to any one operating system or programming
language
• Should be self-describing:
– publish a public interface to the services
• Should be discoverable:
– Mechanism for publishing what you have created
– Can be found via a simple ‘find’ mechanism
• Usually through SOAP (Simple Object Access Protocol)
messages carrying XML documents, and a HTTP
transport protocol or using REST (REpresentational
STate)

Dr. B.N.Gohil - SVNIT 9


Client Server Model

• Client needs to:


– identify location of the required service
– know how to communicate with the service to get what it
required.

• Uses service registry - a third party

Dr. B.N.Gohil - SVNIT 10


SOA model
• Services “published” in a Service registry.

• Service requestor asks Service registry to


locate the service.

• Service requestor “binds” with service


provider to invoke service.

Dr. B.N.Gohil - SVNIT 11


SOA Architectural model

Dr. B.N.Gohil - SVNIT 12


Web Services - Stack
• Service providers publish the details of their services in the service
registry using an Extensible Markup Language (XML) called Web
Services Description Language (WSDL).
• Service requestors find the suitable services from the service
registry using specifications such as Universal Description,
Discovery, and Integration (UDDI).
• Service providers and service requestors communicate with each
other using protocols such as Simple Object Access Protocol (SOAP).
• SOAP allows a program or service running on one platform to
communicate with another program or service running on a
different platform, using the Hypertext Transfer Protocol (HTTP) and
its XML as the mechanisms for information exchange.

Dr. B.N.Gohil - SVNIT 13


Web Services

Dr. B.N.Gohil - SVNIT 14


SOA: Benefits
• SOA enables mutual data exchange between
programs of different vendors without the need
for additional programming or changes to the
services.
• The services should be independent, and they
should have standard interfaces that can be
called to perform their tasks in a standard way.
• A service need not have prior knowledge of the
calling application, and the application does not
need to have knowledge about how the tasks are
performed by a service.

Dr. B.N.Gohil - SVNIT 15


• Reuse of services: results in lower development/
maintenance costs and in quicker time to market.
• 2. Agility: through the wide use of standards such as
web services, the ability to change the business
processes quickly when needed to support the change
in the business activities.
• 3. Monitoring: It helps to monitor the performance of
various services to make the required changes.
• 4. Extended reach: In the collaboration between
enterprises or in the case of shared processes, it is the
ability to get the service of various other processes for
completing a particular task.

Dr. B.N.Gohil - SVNIT 16


Similarities – SOA and Cloud
• both rely on the service concept to achieve the
objectives
• SOA and cloud computing use service delegation
in that the required task is delegated either to
service provider (in the case of cloud computing)
or to other application or business components in
the enterprise (in the case of SOA).
• both cloud computing and SOA promote loose
coupling among the components or services,
which ensures the minimum dependencies
among different parts of the system.

Dr. B.N.Gohil - SVNIT 17


Differences: SOA and Cloud
• The services in SOA mainly focus on business. Each
service in SOA may represent one aspect of the
business process.
• The services could be combined together to provide
the required complete business application or business
solution. Hence, in this sense, the services are
horizontal.
• Various services in cloud computing are usually layered
such as infrastructure, platform, or software, and the
lower layer services support the upper services to
deliver applications. Hence, the services in this case are
vertical

Dr. B.N.Gohil - SVNIT 18


• SOA is used for defining the application architecture.
The various components or services of the application
are divided based on their roles in the SOA
applications. That means the solution for a business
problem could be achieved by combining the various
abstract services performing the required functions.
The services in the SOA can be reused by other
applications.
• Cloud computing is a mechanism for delivering IT
services. The various services can be divided or
grouped based on their roles such as infrastructure,
platform, or software. The services in this case could
also be reused by other applications.
Dr. B.N.Gohil - SVNIT 19
How SOA meets Cloud
• The web services standards (WS*) used in SOA are also used in the
cloud computing domain for solving various issues, such as
asynchronous messaging, metadata exchange, and event handling.
• SOA is an architecture, and cloud computing is an instance of
architecture or an architectural option, not an architecture by itself.
• When used with cloud computing, SOA helps to deliver IT resources
as a service over the Internet, and to mix and match the resources
to meet the business requirements.
• SOA using cloud computing architecture provides the agility in such
a way that it could easily be changed to incorporate the business
needs since it uses services that are configured through a
configuration or process layer.

Dr. B.N.Gohil - SVNIT 20


Convergence

Dr. B.N.Gohil - SVNIT 21

You might also like