SlideShare a Scribd company logo
1 of 3
Download to read offline
2/19/2014

application_architecture3.html
Welcome venkateswarlu
Account Sign Out Help Country

Products
Oracle Technology Network

Articles

Solutions

Communities

Downloads

I am a...

Store

I want to...

Support

Training

Search

Partners

About

OTN

Enterprise Architecture

Application Development
Framew ork

Application Architecture for Applications Built on BEA WebLogic Platform 8.1
Pages: 1, 2, 3

Application Express

Physical View

Big Data
Business Intelligence
Cloud Computing
Communications

The Physical View (aka Deployment View) shows the hardware upon which the application will be deployed. It also describes which parts of the
application are deployed to which physical pieces of hardware.
The hardware and software deployment described in this section is an example of how an application built on the WebLogic Platform can be
deployed and represents the "most common" or "best practice" architecture. However, there are many possible alternate configurations; the
actual hardware architecture will depend on the actual application and balances a multitude of often conflicting constraints including budget,
reliability, availability, scalability, security, and preexisting network and computing resources.

Database Performance &
Availability

Hardware Deployment

Data Warehousing

Figure 2 illustrates a typical hardware environment onto which an application built on the WebLogic Platform could be deployed.

.NET
Dynamic Scripting Languages
Embedded
Digital Experience
Enterprise Architecture
Enterprise Management
Identity & Security
Java
Linux
Service-Oriented Architecture
Solaris
SQL & PL/SQL
Systems - All Articles
Virtualization

Figure 2. A typical hardware environment
This diagram shows three servers in both the Web tier and the Application tier. There could be any number of servers in either of those tiers.
Additionally, each server might have one or many CPUs. The parts of the hardware environment are described in the following sections.
Clients
This hardware architecture shows three different clients: Internet clients, intranet clients, and internal clients. This is intended as a purely
illustrative choice of clients and where they would connect into the network. Nonetheless, it does illustrate that a broader audience requires more
layers of security to prevent unauthorized access into the system.
Each of the clients depicted could be accessing the system via a browser (using HTTP(S), via a Web service (using SOAP), via RMI or RMI/IIOP
(perhaps tunneled through HTTP), or even via a B2B protocol such as ebXML or RosettaNet. Regardless of the access protocol, the request is
handled by the Presentation and Interface Layer of the software architecture.
Firewalls
Three firewalls are shown in this hardware architecture. The first firewall protects the Web tier from malicious Internet denizens. The second
firewall protects the Application tier, and the optional third firewall protects the EIS tier, which contains the corporate data.
Web Tier
The Web tier exists between the first and second firewall. This is also sometimes referred to as the DMZ. Its primary function is to provide a
security layer between the Internet and the rest of the corporate computing environment. The Web tier also provides several other functions
including load balancing and static content delivery. If Single-Sign-On (SSO) is desired, then the initial authentication is generally performed in
this tier.
The computing resources in the Web tier are used to run a web server farm (for example, Apache, Netscape, IIS, BEA WebLogic Express). There
should be no application code deployed to this tier. Only static content (that is, images and HTML) should be served from this tier. Client requests
for the application are forwarded to the Application tier via a WebLogic proxy installed in the web server.
Application Tier
The Application tier is where the application is deployed. All four layers of the application architecture (see Figure 1) are deployed in this tier. If
high availability is desired, then a WebLogic cluster should be configured as part of the deployment process. This diagram shows the existence
of a WebLogic domain. The hardware could host one or many WebLogic domains, and each domain could have one or many applications.
Because J2EE defines a web container and an EJB container, some companies have chosen to deploy these containers on separate hardware
tiers. This is not a recommended approach when using the WebLogic Platform. Separating the web container from the EJB container makes
deployment of the application more difficult and results in severe performance degradation. The performance degradation is due to the extra
network round trips and the marshalling and demarshalling required to go over the network. Conversely, if an application is deployed as a single
EAR file, then local interfaces and pass by reference can be used in calls between components in the application.
EIS Tier
The Enterprise Information Systems (EIS) tier is the primary location for storage of all information for the business domain. In the enterprise today,
this data can be stored in an enterprise database management system, by a legacy or mainframe system, in a Commercial-Off-The-Shelf (COTS)
product (for example, Siebel, SAP, PeopleSoft), or in some unknown location abstracted behind a messaging transport or Web service.
Software Deployment
The following diagram shows the deployment of an application to the Application tier shown above in Figure 2.

http://www.oracle.com/technetwork/articles/entarch/application-architecture3-086973.html

1/3
2/19/2014

application_architecture3.html

Figure 3. Deployment of an application to the Application tier
This shows a single, clustered application deployed to all three servers in the Application tier. This is the simplest way to deploy an application
build on the WebLogic Platform, but there are many other possibilities. The next diagram illustrates another type of deployment:

Figure 4. Portal application and BPM
This figure shows a portal application on two servers in a cluster and a separate application for Business Process Management (BPM) deployed
to a single server. In this deployment the portal application provides high availability while the BPM application does not. Such a deployment might
be appropriate if the portal application is critical and uses a non-critical BPM application.
These examples show three servers with one WebLogic instance on each. However, there could be any number of servers and one or multiple
WebLogic instances per server. In fact, there is a tremendous amount of flexibility in the way that applications can be deployed on the BEA
WebLogic Platform. Some deployment "rules of thumb" are:
One instance of WebLogic for every two or three CPUs
Applications that are to be administered together should be in a common WebLogic domain
Applications that are unrelated should go in separate WebLogic domains even if they are sharing hardware resources
WebLogic instances should be clustered if high availability or fault tolerance is a requirement
If the application needs N servers to provide the necessary performance and throughput, then the application should be deployed on N+1 servers
to allow for server outages (either planned or unplanned).
This section concludes the discussion of hardware and software deployment in the Physical View. The next section will examine the Process
View of the 4+1 View Model.

Process View
The Process View (aka Concurrency View) shows the various processes and the communication that occurs between the processes. The
following diagram illustrates the processes that are involved in servicing a web browser request for data that resides in a relational database.

Figure 5. Process View
This simple example of a process diagram shows that multiple processes and threads are involved in servicing a single browser request. The
process diagram could be much more complex especially if asynchrony and multiple back end systems are involved in servicing a single request.
The next diagram illustrates the processes and threads of the WebLogic Platform.

Figure 6. Processes and threads of the Web Logic Platform
As illustrated in the above diagram, a single instance of WebLogic Server corresponds to a single process with multiple threads. By default,
WebLogic Server is configured with a single request queue. Additional request queues can be configured to separate different types of requests.
For example, it might be desirable to separate higher priority requests from low priority computationally expensive requests.

http://www.oracle.com/technetwork/articles/entarch/application-architecture3-086973.html

2/3
2/19/2014

application_architecture3.html
When using the pure-Java socket reader implementation, the Socket Reader threads and Worker threads both come from the same thread pool.
When native IO is configured, the native socket reader multiplexor threads have their own execute queue and do not borrow threads from the
request queue thread pool.
Communication
By and large, the communication within an application built on the WebLogic Platform is handled transparently by the platform. However, there are
some communication constructs supported by the platform that may have important architectural impacts.
Conversations
The Web services provided by the WebLogic Platform provide a mechanism to easily create a conversation between the client and the application.
The state of the conversation is stored persistently so the conversation can be long lived and can survive even a complete system shutdown.
(Conversation timeouts can also be set so that abandoned conversations are cleaned up automatically.)
Asynchronous Support
The WebLogic Platform provides several mechanisms for asynchronous communication.
The control architecture provides a simple mechanism to create and register for callbacks.
An asynchronous web service can be easily constructed with a Java Web Service (JWS) file.
The platform includes a reliable SOAP messaging framework whereby an application running in one WebLogic instance can asynchronously and
reliably invoke a web service running on another WebLogic instance.
The platform includes a message broker that allows asynchronous communication to and from Process Definitions.
The platform includes JMS and MDB support, which are the J2EE standard mechanisms for asynchronous communication.
Security
Security is not generally thought of as part of the communication between components within an application. However, WebLogic Platform
includes an industry-leading security infrastructure that is transparently intercepting and taking action on communications within the application.
This security infrastructure is part of WebLogic Server and is leveraged by the rest of the platform to create consistent, declarative, policy-based
security for all aspects of the application. The need to write custom code to enforce security within the application should be very rare.
The WebLogic Platform also supports WS-Security. This not only provides encryption of web services messages but also ties the web services
stack into the underlying security infrastructure.
WebLogic Enterprise Security (WLES) is another BEA product that can be incorporated into a solution built on the WebLogic Platform. WLES
provides enhanced application security that includes: policy-based delegated administration, authentication with single sign-on, consolidated
auditing, and dynamic-role and policy-based authorization with delegation.

Conclusion
The goal of this article is to present the extensive functionality provided by the BEA WebLogic Platform in a high-level view easily digestible by
application architects and designers. To accomplish this, the 4+1 View Model was used to describe the architecture of applications built on the
WebLogic Platform. The Developer View provides a unified view of the components provided by WebLogic Server, WebLogic Portal, WebLogic
Integration, WebLogic Workshop, and Liquid Data for WebLogic. This view also shows the architectural layers in a well-designed application and
identifies the components used in each of the layers. The Physical View provides a simple example of a deployment of an application built on the
WebLogic Platform. Both the software deployment and the physical hardware deployment are depicted. The Process View describes the threads
and processes involved in servicing a user request. It also touches on application communication issues such as conversations, asynchrony,
and security.
We hope that this furnishes a better understanding of the WebLogic Platform and the robust foundation that it provides for application
development and that this understanding can be used to help build and design applications that leverage the capabilities provided by the
WebLogic Platform.

Additional Reading
Introduction to OMG's Unified Modeling Language (UML)
Object Oriented Analysis
Architectural Blueprints - The "4+1" View Model of Software Architecture (PDF)
Bob Hensle has over 20 years of industry experience including more than eight years with BEA Consulting.

E-mail this page

ORACLE CLOUD
Learn About Oracle Cloud
Get a Free Trial
Learn About PaaS
Learn About SaaS
Learn About IaaS

JAVA
Learn About Java
Download Java for
Consumers

CUSTOMERS AND EVENTS
Explore and Read Customer
Stories
All Oracle Events

Download Java for Developers
Java Resources for
Developers
Java Cloud Service
Java Magazine

Oracle OpenWorld
JavaOne

COMMUNITIES
Blogs
Discussion Forums

SERVICES AND STORE
Log In to My Oracle Support
Training and Certification

Wikis
Oracle ACEs
User Groups
Social Media Channels

Printer View

Become a Partner
Find a Partner Solution
Purchase from the Oracle
Store
CONTACT AND CHAT
Phone: +1.800.633.0738
Global Contacts
Oracle Support
Partner Support

Subscribe Careers Contact Us Site Maps Legal Notices Terms of Use Privacy Cookie Preferences Oracle Mobile

http://www.oracle.com/technetwork/articles/entarch/application-architecture3-086973.html

3/3

More Related Content

What's hot

The Middleware technology that connects the enterprise
The Middleware technology that connects the enterpriseThe Middleware technology that connects the enterprise
The Middleware technology that connects the enterprise Kasun Indrasiri
 
J2 EEE SIDES
J2 EEE  SIDESJ2 EEE  SIDES
J2 EEE SIDESbputhal
 
Win net presentacion [2005]
Win net presentacion [2005]Win net presentacion [2005]
Win net presentacion [2005]Raul Soto
 
Chaczko2010
Chaczko2010Chaczko2010
Chaczko2010rojabhyf
 
WebServices and Workflow technologies
WebServices and Workflow technologiesWebServices and Workflow technologies
WebServices and Workflow technologiesNitin Pande
 
Middleware Basics
Middleware BasicsMiddleware Basics
Middleware BasicsVarun Arora
 
IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction ejlp12
 
Object and component based middleware for distributed system development
Object and component based middleware for distributed system developmentObject and component based middleware for distributed system development
Object and component based middleware for distributed system developmentektabhalwara
 
Project report on mesh hybrid topology network vision
Project report on mesh hybrid topology network visionProject report on mesh hybrid topology network vision
Project report on mesh hybrid topology network visionJignesh Ameta
 
Rapid cloudapplicationdevelopmentwithlimeds
Rapid cloudapplicationdevelopmentwithlimedsRapid cloudapplicationdevelopmentwithlimeds
Rapid cloudapplicationdevelopmentwithlimedsPhilippe Thiran
 
Internship Report
Internship ReportInternship Report
Internship ReportJiali Chen
 
Web Sphere Application Server Features
Web Sphere Application Server FeaturesWeb Sphere Application Server Features
Web Sphere Application Server FeaturesSymbyo Technologies
 

What's hot (20)

The Middleware technology that connects the enterprise
The Middleware technology that connects the enterpriseThe Middleware technology that connects the enterprise
The Middleware technology that connects the enterprise
 
EAI (Integration) and Mulesoft
EAI (Integration) and MulesoftEAI (Integration) and Mulesoft
EAI (Integration) and Mulesoft
 
J2 EEE SIDES
J2 EEE  SIDESJ2 EEE  SIDES
J2 EEE SIDES
 
HR microservices
HR microservicesHR microservices
HR microservices
 
Win net presentacion [2005]
Win net presentacion [2005]Win net presentacion [2005]
Win net presentacion [2005]
 
Hoffer mdm11e pp_ch08
Hoffer mdm11e pp_ch08Hoffer mdm11e pp_ch08
Hoffer mdm11e pp_ch08
 
Chaczko2010
Chaczko2010Chaczko2010
Chaczko2010
 
WebServices and Workflow technologies
WebServices and Workflow technologiesWebServices and Workflow technologies
WebServices and Workflow technologies
 
Mule esb
Mule esbMule esb
Mule esb
 
WebSphere Message Broker Training Agenda
WebSphere Message Broker Training AgendaWebSphere Message Broker Training Agenda
WebSphere Message Broker Training Agenda
 
Middleware Basics
Middleware BasicsMiddleware Basics
Middleware Basics
 
Php Web Frameworks
Php Web FrameworksPhp Web Frameworks
Php Web Frameworks
 
IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction IBM WebSphere MQ Introduction
IBM WebSphere MQ Introduction
 
Cc unit 3 updated version
Cc unit 3 updated versionCc unit 3 updated version
Cc unit 3 updated version
 
Object and component based middleware for distributed system development
Object and component based middleware for distributed system developmentObject and component based middleware for distributed system development
Object and component based middleware for distributed system development
 
Project report on mesh hybrid topology network vision
Project report on mesh hybrid topology network visionProject report on mesh hybrid topology network vision
Project report on mesh hybrid topology network vision
 
Rapid cloudapplicationdevelopmentwithlimeds
Rapid cloudapplicationdevelopmentwithlimedsRapid cloudapplicationdevelopmentwithlimeds
Rapid cloudapplicationdevelopmentwithlimeds
 
Internship Report
Internship ReportInternship Report
Internship Report
 
Web Sphere Application Server Features
Web Sphere Application Server FeaturesWeb Sphere Application Server Features
Web Sphere Application Server Features
 
Cc unit 2 updated
Cc unit 2 updatedCc unit 2 updated
Cc unit 2 updated
 

Viewers also liked

Evaluation q3
Evaluation q3Evaluation q3
Evaluation q3RB6532
 
Updated gcc apr13 - italian
Updated gcc apr13 - italianUpdated gcc apr13 - italian
Updated gcc apr13 - italianFabiosciaco
 
The fabulous fifties en begin sixties
The fabulous fifties en begin sixtiesThe fabulous fifties en begin sixties
The fabulous fifties en begin sixtiesPieter van Veelen
 
Water resources (1)
Water resources (1)Water resources (1)
Water resources (1)Pushpa Latha
 
synthesis quest technology presentation ( ITECH 299)
synthesis quest technology presentation ( ITECH 299)synthesis quest technology presentation ( ITECH 299)
synthesis quest technology presentation ( ITECH 299)Fruhar Safa
 
My Pitch
My PitchMy Pitch
My PitchZoee95
 
Brriers of communication
Brriers of communicationBrriers of communication
Brriers of communicationGopal Venu
 
Pekan baru presentation mandiri workshop
Pekan baru presentation mandiri workshopPekan baru presentation mandiri workshop
Pekan baru presentation mandiri workshopHerman Alfando
 
прект у світі прекрасного
прект  у світі  прекрасногопрект  у світі  прекрасного
прект у світі прекрасногоlara2505
 
THE LITTLE PRINCE HUMALIT FINAL PROJECT :)
THE LITTLE PRINCE HUMALIT FINAL PROJECT :)THE LITTLE PRINCE HUMALIT FINAL PROJECT :)
THE LITTLE PRINCE HUMALIT FINAL PROJECT :)Boyrapido
 
портфоліо вчителя світової літератури
портфоліо вчителя світової літературипортфоліо вчителя світової літератури
портфоліо вчителя світової літературиlara2505
 
Ekta resume testing
Ekta  resume testing Ekta  resume testing
Ekta resume testing Ekta Jain
 

Viewers also liked (15)

Powerpoint accesssssssssss
Powerpoint accesssssssssssPowerpoint accesssssssssss
Powerpoint accesssssssssss
 
Evaluation q3
Evaluation q3Evaluation q3
Evaluation q3
 
Updated gcc apr13 - italian
Updated gcc apr13 - italianUpdated gcc apr13 - italian
Updated gcc apr13 - italian
 
The fabulous fifties en begin sixties
The fabulous fifties en begin sixtiesThe fabulous fifties en begin sixties
The fabulous fifties en begin sixties
 
Water resources (1)
Water resources (1)Water resources (1)
Water resources (1)
 
synthesis quest technology presentation ( ITECH 299)
synthesis quest technology presentation ( ITECH 299)synthesis quest technology presentation ( ITECH 299)
synthesis quest technology presentation ( ITECH 299)
 
Tạo hình thành bụng
Tạo hình thành bụngTạo hình thành bụng
Tạo hình thành bụng
 
My Pitch
My PitchMy Pitch
My Pitch
 
Water resources
Water resourcesWater resources
Water resources
 
Brriers of communication
Brriers of communicationBrriers of communication
Brriers of communication
 
Pekan baru presentation mandiri workshop
Pekan baru presentation mandiri workshopPekan baru presentation mandiri workshop
Pekan baru presentation mandiri workshop
 
прект у світі прекрасного
прект  у світі  прекрасногопрект  у світі  прекрасного
прект у світі прекрасного
 
THE LITTLE PRINCE HUMALIT FINAL PROJECT :)
THE LITTLE PRINCE HUMALIT FINAL PROJECT :)THE LITTLE PRINCE HUMALIT FINAL PROJECT :)
THE LITTLE PRINCE HUMALIT FINAL PROJECT :)
 
портфоліо вчителя світової літератури
портфоліо вчителя світової літературипортфоліо вчителя світової літератури
портфоліо вчителя світової літератури
 
Ekta resume testing
Ekta  resume testing Ekta  resume testing
Ekta resume testing
 

Similar to Wl application architecture3

L7-L7 Services in a Cloud Datacenter
L7-L7 Services in a Cloud Datacenter L7-L7 Services in a Cloud Datacenter
L7-L7 Services in a Cloud Datacenter Vikas Deolaliker
 
A Hybrid Architecture for Web-based Expert Systems
A Hybrid Architecture for Web-based Expert SystemsA Hybrid Architecture for Web-based Expert Systems
A Hybrid Architecture for Web-based Expert SystemsWaqas Tariq
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architectureAmit rai Raaz
 
Topic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information SystemsTopic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information Systemssanjoysanyal
 
Cloud computing challenges with emphasis on amazon ec2 and windows azure
Cloud computing challenges with emphasis on amazon ec2 and windows azureCloud computing challenges with emphasis on amazon ec2 and windows azure
Cloud computing challenges with emphasis on amazon ec2 and windows azureIJCNCJournal
 
Web technology and commerce unit 2
Web technology and commerce unit 2Web technology and commerce unit 2
Web technology and commerce unit 2arun0501
 
E-Business And Technology Essay
E-Business And Technology EssayE-Business And Technology Essay
E-Business And Technology EssayPamela Wright
 
The .net remote systems
The .net remote systemsThe .net remote systems
The .net remote systemsRaghu nath
 
Introduction to ejb and struts framework
Introduction to ejb and struts frameworkIntroduction to ejb and struts framework
Introduction to ejb and struts frameworks4al_com
 
Bluedog white paper - scaling for high availability, high utilization
Bluedog white paper - scaling for high availability, high utilizationBluedog white paper - scaling for high availability, high utilization
Bluedog white paper - scaling for high availability, high utilizationtom termini
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecturerahmed_sct
 
Embedding Oracle Weblogic Server 1871199
Embedding Oracle Weblogic Server 1871199Embedding Oracle Weblogic Server 1871199
Embedding Oracle Weblogic Server 1871199cwspeaks
 
Business Data Communications and Networking 12th Edition FitzGerald Solutions...
Business Data Communications and Networking 12th Edition FitzGerald Solutions...Business Data Communications and Networking 12th Edition FitzGerald Solutions...
Business Data Communications and Networking 12th Edition FitzGerald Solutions...TylerYuli
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net FundamentalsAli Taki
 
Application server
Application serverApplication server
Application servernava rathna
 
Review on the Design of Web Based SCADA Systems Based on OPC DA Protocol
Review on the Design of Web Based SCADA Systems Based on OPC DA ProtocolReview on the Design of Web Based SCADA Systems Based on OPC DA Protocol
Review on the Design of Web Based SCADA Systems Based on OPC DA ProtocolCSCJournals
 

Similar to Wl application architecture3 (20)

L7-L7 Services in a Cloud Datacenter
L7-L7 Services in a Cloud Datacenter L7-L7 Services in a Cloud Datacenter
L7-L7 Services in a Cloud Datacenter
 
A Hybrid Architecture for Web-based Expert Systems
A Hybrid Architecture for Web-based Expert SystemsA Hybrid Architecture for Web-based Expert Systems
A Hybrid Architecture for Web-based Expert Systems
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architecture
 
Topic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information SystemsTopic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information Systems
 
Cloud computing challenges with emphasis on amazon ec2 and windows azure
Cloud computing challenges with emphasis on amazon ec2 and windows azureCloud computing challenges with emphasis on amazon ec2 and windows azure
Cloud computing challenges with emphasis on amazon ec2 and windows azure
 
Web technology and commerce unit 2
Web technology and commerce unit 2Web technology and commerce unit 2
Web technology and commerce unit 2
 
E-Business And Technology Essay
E-Business And Technology EssayE-Business And Technology Essay
E-Business And Technology Essay
 
The .net remote systems
The .net remote systemsThe .net remote systems
The .net remote systems
 
Introduction to ejb and struts framework
Introduction to ejb and struts frameworkIntroduction to ejb and struts framework
Introduction to ejb and struts framework
 
TermPaper
TermPaperTermPaper
TermPaper
 
Bluedog white paper - scaling for high availability, high utilization
Bluedog white paper - scaling for high availability, high utilizationBluedog white paper - scaling for high availability, high utilization
Bluedog white paper - scaling for high availability, high utilization
 
Overview of web services
Overview of web servicesOverview of web services
Overview of web services
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
 
Design and functional_specification
Design and functional_specificationDesign and functional_specification
Design and functional_specification
 
Embedding Oracle Weblogic Server 1871199
Embedding Oracle Weblogic Server 1871199Embedding Oracle Weblogic Server 1871199
Embedding Oracle Weblogic Server 1871199
 
Business Data Communications and Networking 12th Edition FitzGerald Solutions...
Business Data Communications and Networking 12th Edition FitzGerald Solutions...Business Data Communications and Networking 12th Edition FitzGerald Solutions...
Business Data Communications and Networking 12th Edition FitzGerald Solutions...
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net Fundamentals
 
Application server
Application serverApplication server
Application server
 
Review on the Design of Web Based SCADA Systems Based on OPC DA Protocol
Review on the Design of Web Based SCADA Systems Based on OPC DA ProtocolReview on the Design of Web Based SCADA Systems Based on OPC DA Protocol
Review on the Design of Web Based SCADA Systems Based on OPC DA Protocol
 
Introduction To Cloud Computing
Introduction To Cloud ComputingIntroduction To Cloud Computing
Introduction To Cloud Computing
 

Wl application architecture3

  • 1. 2/19/2014 application_architecture3.html Welcome venkateswarlu Account Sign Out Help Country Products Oracle Technology Network Articles Solutions Communities Downloads I am a... Store I want to... Support Training Search Partners About OTN Enterprise Architecture Application Development Framew ork Application Architecture for Applications Built on BEA WebLogic Platform 8.1 Pages: 1, 2, 3 Application Express Physical View Big Data Business Intelligence Cloud Computing Communications The Physical View (aka Deployment View) shows the hardware upon which the application will be deployed. It also describes which parts of the application are deployed to which physical pieces of hardware. The hardware and software deployment described in this section is an example of how an application built on the WebLogic Platform can be deployed and represents the "most common" or "best practice" architecture. However, there are many possible alternate configurations; the actual hardware architecture will depend on the actual application and balances a multitude of often conflicting constraints including budget, reliability, availability, scalability, security, and preexisting network and computing resources. Database Performance & Availability Hardware Deployment Data Warehousing Figure 2 illustrates a typical hardware environment onto which an application built on the WebLogic Platform could be deployed. .NET Dynamic Scripting Languages Embedded Digital Experience Enterprise Architecture Enterprise Management Identity & Security Java Linux Service-Oriented Architecture Solaris SQL & PL/SQL Systems - All Articles Virtualization Figure 2. A typical hardware environment This diagram shows three servers in both the Web tier and the Application tier. There could be any number of servers in either of those tiers. Additionally, each server might have one or many CPUs. The parts of the hardware environment are described in the following sections. Clients This hardware architecture shows three different clients: Internet clients, intranet clients, and internal clients. This is intended as a purely illustrative choice of clients and where they would connect into the network. Nonetheless, it does illustrate that a broader audience requires more layers of security to prevent unauthorized access into the system. Each of the clients depicted could be accessing the system via a browser (using HTTP(S), via a Web service (using SOAP), via RMI or RMI/IIOP (perhaps tunneled through HTTP), or even via a B2B protocol such as ebXML or RosettaNet. Regardless of the access protocol, the request is handled by the Presentation and Interface Layer of the software architecture. Firewalls Three firewalls are shown in this hardware architecture. The first firewall protects the Web tier from malicious Internet denizens. The second firewall protects the Application tier, and the optional third firewall protects the EIS tier, which contains the corporate data. Web Tier The Web tier exists between the first and second firewall. This is also sometimes referred to as the DMZ. Its primary function is to provide a security layer between the Internet and the rest of the corporate computing environment. The Web tier also provides several other functions including load balancing and static content delivery. If Single-Sign-On (SSO) is desired, then the initial authentication is generally performed in this tier. The computing resources in the Web tier are used to run a web server farm (for example, Apache, Netscape, IIS, BEA WebLogic Express). There should be no application code deployed to this tier. Only static content (that is, images and HTML) should be served from this tier. Client requests for the application are forwarded to the Application tier via a WebLogic proxy installed in the web server. Application Tier The Application tier is where the application is deployed. All four layers of the application architecture (see Figure 1) are deployed in this tier. If high availability is desired, then a WebLogic cluster should be configured as part of the deployment process. This diagram shows the existence of a WebLogic domain. The hardware could host one or many WebLogic domains, and each domain could have one or many applications. Because J2EE defines a web container and an EJB container, some companies have chosen to deploy these containers on separate hardware tiers. This is not a recommended approach when using the WebLogic Platform. Separating the web container from the EJB container makes deployment of the application more difficult and results in severe performance degradation. The performance degradation is due to the extra network round trips and the marshalling and demarshalling required to go over the network. Conversely, if an application is deployed as a single EAR file, then local interfaces and pass by reference can be used in calls between components in the application. EIS Tier The Enterprise Information Systems (EIS) tier is the primary location for storage of all information for the business domain. In the enterprise today, this data can be stored in an enterprise database management system, by a legacy or mainframe system, in a Commercial-Off-The-Shelf (COTS) product (for example, Siebel, SAP, PeopleSoft), or in some unknown location abstracted behind a messaging transport or Web service. Software Deployment The following diagram shows the deployment of an application to the Application tier shown above in Figure 2. http://www.oracle.com/technetwork/articles/entarch/application-architecture3-086973.html 1/3
  • 2. 2/19/2014 application_architecture3.html Figure 3. Deployment of an application to the Application tier This shows a single, clustered application deployed to all three servers in the Application tier. This is the simplest way to deploy an application build on the WebLogic Platform, but there are many other possibilities. The next diagram illustrates another type of deployment: Figure 4. Portal application and BPM This figure shows a portal application on two servers in a cluster and a separate application for Business Process Management (BPM) deployed to a single server. In this deployment the portal application provides high availability while the BPM application does not. Such a deployment might be appropriate if the portal application is critical and uses a non-critical BPM application. These examples show three servers with one WebLogic instance on each. However, there could be any number of servers and one or multiple WebLogic instances per server. In fact, there is a tremendous amount of flexibility in the way that applications can be deployed on the BEA WebLogic Platform. Some deployment "rules of thumb" are: One instance of WebLogic for every two or three CPUs Applications that are to be administered together should be in a common WebLogic domain Applications that are unrelated should go in separate WebLogic domains even if they are sharing hardware resources WebLogic instances should be clustered if high availability or fault tolerance is a requirement If the application needs N servers to provide the necessary performance and throughput, then the application should be deployed on N+1 servers to allow for server outages (either planned or unplanned). This section concludes the discussion of hardware and software deployment in the Physical View. The next section will examine the Process View of the 4+1 View Model. Process View The Process View (aka Concurrency View) shows the various processes and the communication that occurs between the processes. The following diagram illustrates the processes that are involved in servicing a web browser request for data that resides in a relational database. Figure 5. Process View This simple example of a process diagram shows that multiple processes and threads are involved in servicing a single browser request. The process diagram could be much more complex especially if asynchrony and multiple back end systems are involved in servicing a single request. The next diagram illustrates the processes and threads of the WebLogic Platform. Figure 6. Processes and threads of the Web Logic Platform As illustrated in the above diagram, a single instance of WebLogic Server corresponds to a single process with multiple threads. By default, WebLogic Server is configured with a single request queue. Additional request queues can be configured to separate different types of requests. For example, it might be desirable to separate higher priority requests from low priority computationally expensive requests. http://www.oracle.com/technetwork/articles/entarch/application-architecture3-086973.html 2/3
  • 3. 2/19/2014 application_architecture3.html When using the pure-Java socket reader implementation, the Socket Reader threads and Worker threads both come from the same thread pool. When native IO is configured, the native socket reader multiplexor threads have their own execute queue and do not borrow threads from the request queue thread pool. Communication By and large, the communication within an application built on the WebLogic Platform is handled transparently by the platform. However, there are some communication constructs supported by the platform that may have important architectural impacts. Conversations The Web services provided by the WebLogic Platform provide a mechanism to easily create a conversation between the client and the application. The state of the conversation is stored persistently so the conversation can be long lived and can survive even a complete system shutdown. (Conversation timeouts can also be set so that abandoned conversations are cleaned up automatically.) Asynchronous Support The WebLogic Platform provides several mechanisms for asynchronous communication. The control architecture provides a simple mechanism to create and register for callbacks. An asynchronous web service can be easily constructed with a Java Web Service (JWS) file. The platform includes a reliable SOAP messaging framework whereby an application running in one WebLogic instance can asynchronously and reliably invoke a web service running on another WebLogic instance. The platform includes a message broker that allows asynchronous communication to and from Process Definitions. The platform includes JMS and MDB support, which are the J2EE standard mechanisms for asynchronous communication. Security Security is not generally thought of as part of the communication between components within an application. However, WebLogic Platform includes an industry-leading security infrastructure that is transparently intercepting and taking action on communications within the application. This security infrastructure is part of WebLogic Server and is leveraged by the rest of the platform to create consistent, declarative, policy-based security for all aspects of the application. The need to write custom code to enforce security within the application should be very rare. The WebLogic Platform also supports WS-Security. This not only provides encryption of web services messages but also ties the web services stack into the underlying security infrastructure. WebLogic Enterprise Security (WLES) is another BEA product that can be incorporated into a solution built on the WebLogic Platform. WLES provides enhanced application security that includes: policy-based delegated administration, authentication with single sign-on, consolidated auditing, and dynamic-role and policy-based authorization with delegation. Conclusion The goal of this article is to present the extensive functionality provided by the BEA WebLogic Platform in a high-level view easily digestible by application architects and designers. To accomplish this, the 4+1 View Model was used to describe the architecture of applications built on the WebLogic Platform. The Developer View provides a unified view of the components provided by WebLogic Server, WebLogic Portal, WebLogic Integration, WebLogic Workshop, and Liquid Data for WebLogic. This view also shows the architectural layers in a well-designed application and identifies the components used in each of the layers. The Physical View provides a simple example of a deployment of an application built on the WebLogic Platform. Both the software deployment and the physical hardware deployment are depicted. The Process View describes the threads and processes involved in servicing a user request. It also touches on application communication issues such as conversations, asynchrony, and security. We hope that this furnishes a better understanding of the WebLogic Platform and the robust foundation that it provides for application development and that this understanding can be used to help build and design applications that leverage the capabilities provided by the WebLogic Platform. Additional Reading Introduction to OMG's Unified Modeling Language (UML) Object Oriented Analysis Architectural Blueprints - The "4+1" View Model of Software Architecture (PDF) Bob Hensle has over 20 years of industry experience including more than eight years with BEA Consulting. E-mail this page ORACLE CLOUD Learn About Oracle Cloud Get a Free Trial Learn About PaaS Learn About SaaS Learn About IaaS JAVA Learn About Java Download Java for Consumers CUSTOMERS AND EVENTS Explore and Read Customer Stories All Oracle Events Download Java for Developers Java Resources for Developers Java Cloud Service Java Magazine Oracle OpenWorld JavaOne COMMUNITIES Blogs Discussion Forums SERVICES AND STORE Log In to My Oracle Support Training and Certification Wikis Oracle ACEs User Groups Social Media Channels Printer View Become a Partner Find a Partner Solution Purchase from the Oracle Store CONTACT AND CHAT Phone: +1.800.633.0738 Global Contacts Oracle Support Partner Support Subscribe Careers Contact Us Site Maps Legal Notices Terms of Use Privacy Cookie Preferences Oracle Mobile http://www.oracle.com/technetwork/articles/entarch/application-architecture3-086973.html 3/3