Download Services-based Systems Architecture, Design and Implementation

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Web-Services-based
Systems Architecture,
Design and Implementation
B.Ramamurthy
5/12/2017
1
Goals
 Artifacts of a large scale distributed system
 Architecting a services-based system
 Design issues in services-based system
 Anything else…
5/12/2017
2
Develop/Deploy(DD) Cycle
Service
Endpoint
Interface
Portable
Artifacts
wscompile
Model
WSDL
Deployment
Descriptors
5/12/2017
wsdeploy
Cooked WAR
3
Invocation Model (client side) or
Invoke Cycle
Portable
Artifacts
WSDL
wscompile
Implementation
-specific
Artifacts
Client
5/12/2017
Invoke web service
4
Client Scenarios
Service
endpoint
interface
Web service 2
WSDL
Web service 1
Servlet
Client
5/12/2017
JSP
Client
Java App.
Client
5
Artifacts: the server/container
 Host with an IP (and ports)
 Web servers, servlet servers, application servers







5/12/2017
All can be bundled into one
More than one can be installed in a “host” machine at
different port s
Each has a context root, the path of which represents the
root page for that server
Each has an admin console for managing the server
resources such a data source and message queues.
Elegant way to access the resources in a deployed unit is
through the container (server).
For java, you will define JNDI (Java Naming and Directory
Interface) names for the resources.
Portability of deployable units (Ex: ‘Component technology’:
Enterprise Java beans)
6
Artifacts: the data
 Relational data base; object relational database
 Data modeling (Entity-Relationship modeling)
 Tables
 Operations
 Data access objects (DAO)
 Enterprise java beans (EJB)
 Enterprise information system (Amazon.com
webservices, yahoo feeds)
 Legacy systems
 Device data (sensors)
 RSS, ATOM, XML and text feeds
5/12/2017
7
Artifacts: the services
 WS creation for consumption:
 Typically create a service from language-dependent
interface/class (Ex: Java interface + class)
 Generate WSDL for publication and consumption.
 WS consumption using a published WSDL.
 Generate the language-dependent classes from WSDL
 Understand thoroughly the various components of
the WSDL: messages, port type, bindings, server
(server, port), etc.
 Protocols: SOAP, REST (For project 1 you may use
either)
5/12/2017
8
Artifacts: the clients
 Simple applications to rich client (ex: RIA rich
internet application)
 Internationalization (languages, monitory
units, etc.)
 HTTP monitors, cookies and counters
 Preference profiles
5/12/2017
9
Component Technology
 We need an application architecture that works well in the
new E-commerce age.
 Programmer productivity, cost-effective deployment, rapid
time to market, seamless integration, application portability,
scalability, security are some of the challenges that
component technology tries to address head on.
 Enterprise Java Beans is Sun’s server component model
that provides portability across application servers, and
supports complex systems features such as transactions,
security, etc. on behalf of the application components.
 EJB is a specification provided by Sun and many third
party vendors have products compliant with this
specification: BEA systems, IONA, IBM, Oracle.
5/12/2017
B. Ramamurthy
10
Two-tier applications
Presentation
Logic
Business
Logic
5/12/2017
Database
Server
B. Ramamurthy
11
Three-tier Applications
Presentation
Logic
Business
Logic
5/12/2017
B. Ramamurthy
Database
Server
12
J2EE Application Programming Model
for Web-based applications
Web Service
Business Logic
Web Container
EJB container
Web
Application
Web
client
5/12/2017
Enterprise
Java Beans
B. Ramamurthy
Database
Server
13
J2EE Application Programming Model
for Three-tier Applications
Business Logic
Application
Container
Presentation
Components
5/12/2017
EJB container
Enterprise
Java Beans
B. Ramamurthy
Database
Server
14
J2EE Application Programming Model
for Web-based Applets
Browser
Applet
internet
5/12/2017
Web Service
Business Logic
Web
Container
EJB container
Web
Application
Enterprise
Java Beans
B. Ramamurthy
Database
Server
15
Related documents