SlideShare a Scribd company logo
1 of 32
MIDDLEWARE TECHNOLOGY
A. MARTIN, Asst., Prof.,
Dept. of IT,
Sri Manakula Vinayagar Engg.
College, Puducherry.
Presented By:
OBJECTIVE
īŽ Various computational logic’s.
īŽ Classification of client-server
architecture.
īŽ Middleware Logic and its need.
īŽ Types of Middleware.
īŽ Server side components – EJB.
CONTENTS...
Introduction about Computational
Logic’s.
Single-Tier , Two-Tier, and Three-Tier
Applications.
Middleware Services and N-Tier Architecture.
Types of Middleware Logic.
Server Side Components – EJB.
Types of EJB.
Roles in EJB.
Conclusion
When you develop a computer or
software application - Logic’s required,
īŽBusiness Logic
īŽData Logic
īŽPresentation Logic
īŽData Driver Logic
īŽTransaction Logic
īŽSecurity Logic
INTRODUCTION
CLIENT SEVER APPLICATIONS
Server
īŽ It is an entity which have resources that
can be shared by all of its clients.
Client
īŽ It is an entity which takes or consumes
resources from the server.
Client/Server Architecture
īŽ It is an architecture to develop an
application which is based on layering of
logic’s.
Single Tier Architecture
All the logic’s kept in a single place or
intermixing of various logic.
Presentation Logic
Business Logic
Data Logic
A STANDALONE
APPLICATION
A COMPUTER SYSTEM
Disadvantage
īŽ Changing of one logic affects the
other parts of logic.
īŽ It is difficult to modify the
changes.
Data Logic
īƒ¨PRESENTATION
LOGIC
īƒ¨BUSINESS LOGIC
Client 1 Client 2 Client N
Server
īƒ¨DATA LOGIC
Two Tier Architecture
Two Tier Architecture
Two levels of layering.
Advantage - Any modification in database
server which in reflects all the clients.
Disadvantage - Any change in one client
cannot be reflected in other clients.
Server Side
Programs
PRESENTATION LOGIC
BUSINESS LOGIC
DATA LOGIC
Client 1
Client 2
Client N
Three Tier Architecture
Three Tier Architecture
Three levels of layering.
Advantage - Any modification in server side
program which reflects all the clients.
īąIt is good for medium size applications.
Disadvantage
īąNot suitable for large scale applications or
enterprise applicationsâ€Ļ
īąThe intermixing of business logic with other logic
leads to complexity.
Issues on Three-Tier Architecture
LOAD BALANCING
īą Server with lightest load.
īą If Server overloaded – different server
should be chosen.
TRANSPARENT FAIL-OVER
īą If a server crashes or if the network
crashes can clients rerouted to other
server without interruption of service.
TRANSACTIONS
īą What if two clients access the same row
of the database simultaneously.
īą What if the database crashes?
DYNAMIC REDEPLOYMENT
īą How do you perform software upgrades
while site is running?
īą Machine down or keep running.
THREADING
īą Processing multiple client requests
simultaneously – server multi-threaded
SECURITY
īą The servers and databases need to be
shielded from unknown users.
Issues on Three-Tier Architecture contâ€Ļ
LOGGING AND AUDITTING
īą If something goes wrong, is there a log
that we can consult to determine the
cause of the problem.
OBJECT LIFE CYCLE
īą When client traffic increases or decreases
respectively.
īą The objects that live within server need to
be created or destroyed.
Issues on Three-Tier Architecture contâ€Ļ
Together these services are called
MIDDLEWARE services.
Middleware services are available in Multi-
tier architecture.
Nowadays most of the applications are
developed using Middleware technology.
E.g.: EJB, CORBA, DCOM, .NET Framework.
MIDDLEWARE
MIDDLE
WARE
LOGIC
BUSINE
SS
LOGIC
PRESENTATION
LOGIC
DATA
LOGIC
APPLICATION
SERVER
Client 1
Client 2
Client 3
Client N
Multi-tier Architecture
īą In the past most of the companies built
their own Middleware.
īą The application servers were born to let
you buy these middleware services,
rather than build them yourself.
īą Application servers allow developers to
focus on server side application
development and NOT WORRY about
middleware services.
īą E.g. Web Logic, IBM Web Sphere,
Sun’s J2EE Server.
APPLICATION SERVERS
TYPES OF MIDDLEWARE
īŽ Explicit Middleware
īŽ Implicit Middleware
EXPLICIT MIDDLEWARE
our business logic is intertwined with the logic to call these
middleware APIs.
EXAMPLE
īŽ transfer(Account account1, Account
account2, long amount) {
īŽ // 1: Call middleware API to perform a security
check
īŽ // 2: Call middleware API to start a transaction
īŽ // 3: Call middleware API to load rows from the
database
īŽ // 4: Subtract the balance from one
account, add to the other – Business Logic
īŽ // 5: Call middleware API to store rows In the
database
īŽ // 6: Call middleware API to end the transaction
īŽ }
īŽ Example - Traditional distributed object
technologies such as CORBA, DCOM, or RMI
IMPLICIT MIDDLEWARE
īŽ Write your distributed object to contain only
business logic.
īŽ Do not write to complex middleware APIs.
īŽ For example, here’s the code that would run
inside the distributed object
transfer(Account account1, Account
account2, long amount) {
// 1: Subtract the balance from one
account, add to the other }
REQUEST INTERCEPTOR
īą Declare the middleware services that the
distributed object needs in a separate
descriptor file, such as a plain text file.
īą For example, you might declare that you
need transactions, persistence, and a
security check.
īą The request interceptor intercepts
requests from the client, performs the
middleware that your distributed object
needs and then delegates the call to the
distributed object.
IMPLICIT MIDDLEWARE (Gained through
declarations).
Newer, component-based technologies (EJB,
CORBA Component Model, and Microsoft COM+)
Enterprise Java Beans (EJB)
Enterprise Java Beans (EJB) is a server – side
component architecture that simplifies the process
of building enterprise – class distributed
component applications in java.
Multi-tiered Architecture
In multi-tiered application the various components
that make up application are logically separated,
across levels or layers of the network-computing
environment.
Distributed Applications
In distributed applications the communication lies
between two or more different objects running on
different machines.
SERVER SIDE COMPONENTS
īŽ Applications should be constructing as group of
components.
īŽ Component is code that implements a set of well-
defined interfaces.
īŽ Components are not entire application – they
cannot run alone.
īŽ Components can be used as puzzle pieces to solve
some larger problem.
EXAMPLE
īŽ Pricing Component – computes the prices of
goods.
īŽ Shipping Component – Cargo Shipping –
Tracking the cargo status.
PRICING RULES
īŽ Base prices – ordering for single hard disk.
īŽ Quantity discounts – ordering for more than
10 speakers.
īŽ Bundling discounts – ordering for both hard
disk and speakers.
īŽ Preferred customer – big-name customers
īŽ Locale discounts – depending upon where
customer lives
īŽ Overhead costs – shipping and taxes.
īą Each company develops – wastage of resources
īą Generic pricing component – reused for different
customers.
EXAMPLES
īŽ U.S POSTAL SERVICE - compute shipping costs
for mailing packages.
īŽ AUTOMOBILE MANUFACTURER – determine
prices for car
īŽ ONLINE TEXTILE SHOPPING – determine
prices for cloth items.
REUSABILITY - COMPONENTS
Types of EJB
SESSION BEANS
īŽ Session beans model business process.
īŽ They are like verbs because they are actions –
action could be anything.
īŽ They contains business process – related logic.
īŽ E.g.:- adding any numbers, Credit card
verification, etc.,
ENTITY BEANS
īŽ Entity beans model business data.
īŽ They contain data-related logic.
īŽ They are like nouns because they are data
objects
īŽ E.g.:- a product, an order, an employee or a
credit card.
Clients interacting with an EJB
component system
Roles in EJB
EJB encourages participation of more than six different
parties,
The Bean Provider
īŽ Supplies business components or enterprise beans.
The Application Assembler
īŽ Make components fit together
īŽ Writes applications that combine components.
The EJB Deployer
īŽ How to deploy beans within servers
īŽ Customize the beans for specific environment.
The System Administrator
īŽ Oversee the stability of the operational environment
īŽ Monitoring of the deployed system.
The Container and Service Provider
īŽ EJB Container or Application server
īŽ This is the runtime environment in which the bean lives.
īŽ BEA’s Weblogic
īŽ IBM’s WebSphere
īŽ Oracle’s Oracle 9i
īŽ JBoss open source application server.
The Tool Vendor
īŽ Integrated Development Environments – IDEs
īŽ IBM’s visual age for Java
īŽ Borland’s JBuilder.
Time to interact

More Related Content

What's hot

Client server based computing
Client server based computingClient server based computing
Client server based computingMohammad Affan
 
Java unit 4_cs_notes
Java unit 4_cs_notesJava unit 4_cs_notes
Java unit 4_cs_notesNiraj Bharambe
 
J2 ee tutorial ejb
J2 ee tutorial ejbJ2 ee tutorial ejb
J2 ee tutorial ejbNiraj Bharambe
 
Mba ii u v enterprise application integration
Mba ii u v enterprise application integrationMba ii u v enterprise application integration
Mba ii u v enterprise application integrationRai University
 
Meeting Mobile and BYOD Security Challenges
Meeting Mobile and BYOD Security ChallengesMeeting Mobile and BYOD Security Challenges
Meeting Mobile and BYOD Security ChallengesSymantec
 
BizTalk Server- Schema
BizTalk Server-  SchemaBizTalk Server-  Schema
BizTalk Server- SchemaAboorvaRaja Ramar
 
Topic3 Enterprise Application Integration
Topic3 Enterprise Application IntegrationTopic3 Enterprise Application Integration
Topic3 Enterprise Application Integrationsanjoysanyal
 
Informatica Online Training
Informatica Online Training Informatica Online Training
Informatica Online Training saikirancrs
 
J2EE Architecture Explained
J2EE  Architecture ExplainedJ2EE  Architecture Explained
J2EE Architecture ExplainedAdarsh Kr Sinha
 
WCF (Windows Communication Foundation_Unit_01)
WCF (Windows Communication Foundation_Unit_01)WCF (Windows Communication Foundation_Unit_01)
WCF (Windows Communication Foundation_Unit_01)Prashanth Shivakumar
 
Modernizing SCA through new Object Management Group (OMG) standards
Modernizing SCA through new Object Management Group (OMG) standardsModernizing SCA through new Object Management Group (OMG) standards
Modernizing SCA through new Object Management Group (OMG) standardsRemedy IT
 
App designer2 in peoplesoft
App designer2 in peoplesoftApp designer2 in peoplesoft
App designer2 in peoplesoftVenkat Jyesta
 
Java Web Programming [1/9] : Introduction to Web Application
Java Web Programming [1/9] : Introduction to Web ApplicationJava Web Programming [1/9] : Introduction to Web Application
Java Web Programming [1/9] : Introduction to Web ApplicationIMC Institute
 
An Inference Sharing Architecture for a More Efficient Context Reasoning
An Inference Sharing Architecture for a More Efficient Context ReasoningAn Inference Sharing Architecture for a More Efficient Context Reasoning
An Inference Sharing Architecture for a More Efficient Context ReasoningAitor Almeida
 
ETL Profile-Rajnish Kumar
ETL Profile-Rajnish KumarETL Profile-Rajnish Kumar
ETL Profile-Rajnish KumarRajnish Kumar
 
Canonical data model
Canonical data modelCanonical data model
Canonical data modelGovind Mulinti
 

What's hot (20)

EAI example
EAI exampleEAI example
EAI example
 
Client server based computing
Client server based computingClient server based computing
Client server based computing
 
Java unit 4_cs_notes
Java unit 4_cs_notesJava unit 4_cs_notes
Java unit 4_cs_notes
 
J2 ee tutorial ejb
J2 ee tutorial ejbJ2 ee tutorial ejb
J2 ee tutorial ejb
 
Mba ii u v enterprise application integration
Mba ii u v enterprise application integrationMba ii u v enterprise application integration
Mba ii u v enterprise application integration
 
Meeting Mobile and BYOD Security Challenges
Meeting Mobile and BYOD Security ChallengesMeeting Mobile and BYOD Security Challenges
Meeting Mobile and BYOD Security Challenges
 
BizTalk Server- Schema
BizTalk Server-  SchemaBizTalk Server-  Schema
BizTalk Server- Schema
 
XML Unit 01
XML Unit 01XML Unit 01
XML Unit 01
 
Topic3 Enterprise Application Integration
Topic3 Enterprise Application IntegrationTopic3 Enterprise Application Integration
Topic3 Enterprise Application Integration
 
Informatica Online Training
Informatica Online Training Informatica Online Training
Informatica Online Training
 
J2EE Architecture Explained
J2EE  Architecture ExplainedJ2EE  Architecture Explained
J2EE Architecture Explained
 
Ra framework 0.1
Ra framework 0.1Ra framework 0.1
Ra framework 0.1
 
Mallikarjun_Konduri
Mallikarjun_KonduriMallikarjun_Konduri
Mallikarjun_Konduri
 
WCF (Windows Communication Foundation_Unit_01)
WCF (Windows Communication Foundation_Unit_01)WCF (Windows Communication Foundation_Unit_01)
WCF (Windows Communication Foundation_Unit_01)
 
Modernizing SCA through new Object Management Group (OMG) standards
Modernizing SCA through new Object Management Group (OMG) standardsModernizing SCA through new Object Management Group (OMG) standards
Modernizing SCA through new Object Management Group (OMG) standards
 
App designer2 in peoplesoft
App designer2 in peoplesoftApp designer2 in peoplesoft
App designer2 in peoplesoft
 
Java Web Programming [1/9] : Introduction to Web Application
Java Web Programming [1/9] : Introduction to Web ApplicationJava Web Programming [1/9] : Introduction to Web Application
Java Web Programming [1/9] : Introduction to Web Application
 
An Inference Sharing Architecture for a More Efficient Context Reasoning
An Inference Sharing Architecture for a More Efficient Context ReasoningAn Inference Sharing Architecture for a More Efficient Context Reasoning
An Inference Sharing Architecture for a More Efficient Context Reasoning
 
ETL Profile-Rajnish Kumar
ETL Profile-Rajnish KumarETL Profile-Rajnish Kumar
ETL Profile-Rajnish Kumar
 
Canonical data model
Canonical data modelCanonical data model
Canonical data model
 

Similar to N - Tier Applications, Enterprise Java Beans, Component technologies

Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitectureABDEL RAHMAN KARIM
 
client-server-architecture.ppt
client-server-architecture.pptclient-server-architecture.ppt
client-server-architecture.pptgowriganesh
 
client-server-architecture ss.ppt
client-server-architecture ss.pptclient-server-architecture ss.ppt
client-server-architecture ss.pptOsmanGani61
 
Technology Overview
Technology OverviewTechnology Overview
Technology OverviewLiran Zelkha
 
E-Business And Technology Essay
E-Business And Technology EssayE-Business And Technology Essay
E-Business And Technology EssayPamela Wright
 
Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2sandeep54552
 
enterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfenterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfEidTahir
 
Differences Between Architectures
Differences Between ArchitecturesDifferences Between Architectures
Differences Between Architecturesprasadsmn
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server Architecturesuks_87
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architectureFaren faren
 
Introduction to ejb and struts framework
Introduction to ejb and struts frameworkIntroduction to ejb and struts framework
Introduction to ejb and struts frameworks4al_com
 
chapter 2.pdf
chapter 2.pdfchapter 2.pdf
chapter 2.pdfSusan130641
 

Similar to N - Tier Applications, Enterprise Java Beans, Component technologies (20)

icv
icvicv
icv
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitecture
 
client-server-architecture.ppt
client-server-architecture.pptclient-server-architecture.ppt
client-server-architecture.ppt
 
client-server-architecture ss.ppt
client-server-architecture ss.pptclient-server-architecture ss.ppt
client-server-architecture ss.ppt
 
[IJET-V2I2P8] Authors:Ms. Madhushree M.Kubsad
[IJET-V2I2P8] Authors:Ms. Madhushree M.Kubsad[IJET-V2I2P8] Authors:Ms. Madhushree M.Kubsad
[IJET-V2I2P8] Authors:Ms. Madhushree M.Kubsad
 
Technology Overview
Technology OverviewTechnology Overview
Technology Overview
 
soa1.ppt
soa1.pptsoa1.ppt
soa1.ppt
 
E-Business And Technology Essay
E-Business And Technology EssayE-Business And Technology Essay
E-Business And Technology Essay
 
Resume
ResumeResume
Resume
 
Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2
 
enterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfenterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdf
 
Differences Between Architectures
Differences Between ArchitecturesDifferences Between Architectures
Differences Between Architectures
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server Architecture
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Introduction to ejb and struts framework
Introduction to ejb and struts frameworkIntroduction to ejb and struts framework
Introduction to ejb and struts framework
 
Ashish tripath
Ashish tripathAshish tripath
Ashish tripath
 
J2 ee archi
J2 ee archiJ2 ee archi
J2 ee archi
 
Web based booking a car taxi5
Web based booking a car taxi5Web based booking a car taxi5
Web based booking a car taxi5
 
chapter 2.pdf
chapter 2.pdfchapter 2.pdf
chapter 2.pdf
 
Distributed Systems in Data Engineering
Distributed Systems in Data EngineeringDistributed Systems in Data Engineering
Distributed Systems in Data Engineering
 

Recently uploaded

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑đŸŊ‍❤ī¸â€đŸ§‘đŸģ 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑đŸŊ‍❤ī¸â€đŸ§‘đŸģ 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑đŸŊ‍❤ī¸â€đŸ§‘đŸģ 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑đŸŊ‍❤ī¸â€đŸ§‘đŸģ 89...gurkirankumar98700
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto GonzÃĄlez Trastoy
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
CALL ON âžĨ8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂ī¸
CALL ON âžĨ8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂ī¸CALL ON âžĨ8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂ī¸
CALL ON âžĨ8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂ī¸anilsa9823
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 

Recently uploaded (20)

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑đŸŊ‍❤ī¸â€đŸ§‘đŸģ 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑đŸŊ‍❤ī¸â€đŸ§‘đŸģ 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑đŸŊ‍❤ī¸â€đŸ§‘đŸģ 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑đŸŊ‍❤ī¸â€đŸ§‘đŸģ 89...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi đŸĢĻ HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi đŸĢĻ HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi đŸĢĻ HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi đŸĢĻ HOT AND SEXY VVIP 🍎 SE...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
CALL ON âžĨ8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂ī¸
CALL ON âžĨ8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂ī¸CALL ON âžĨ8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂ī¸
CALL ON âžĨ8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂ī¸
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 

N - Tier Applications, Enterprise Java Beans, Component technologies

  • 1. MIDDLEWARE TECHNOLOGY A. MARTIN, Asst., Prof., Dept. of IT, Sri Manakula Vinayagar Engg. College, Puducherry. Presented By:
  • 2. OBJECTIVE īŽ Various computational logic’s. īŽ Classification of client-server architecture. īŽ Middleware Logic and its need. īŽ Types of Middleware. īŽ Server side components – EJB.
  • 3. CONTENTS... Introduction about Computational Logic’s. Single-Tier , Two-Tier, and Three-Tier Applications. Middleware Services and N-Tier Architecture. Types of Middleware Logic. Server Side Components – EJB. Types of EJB. Roles in EJB. Conclusion
  • 4. When you develop a computer or software application - Logic’s required, īŽBusiness Logic īŽData Logic īŽPresentation Logic īŽData Driver Logic īŽTransaction Logic īŽSecurity Logic INTRODUCTION
  • 5. CLIENT SEVER APPLICATIONS Server īŽ It is an entity which have resources that can be shared by all of its clients. Client īŽ It is an entity which takes or consumes resources from the server. Client/Server Architecture īŽ It is an architecture to develop an application which is based on layering of logic’s.
  • 6. Single Tier Architecture All the logic’s kept in a single place or intermixing of various logic. Presentation Logic Business Logic Data Logic A STANDALONE APPLICATION A COMPUTER SYSTEM
  • 7. Disadvantage īŽ Changing of one logic affects the other parts of logic. īŽ It is difficult to modify the changes.
  • 8. Data Logic īƒ¨PRESENTATION LOGIC īƒ¨BUSINESS LOGIC Client 1 Client 2 Client N Server īƒ¨DATA LOGIC Two Tier Architecture
  • 9. Two Tier Architecture Two levels of layering. Advantage - Any modification in database server which in reflects all the clients. Disadvantage - Any change in one client cannot be reflected in other clients.
  • 10. Server Side Programs PRESENTATION LOGIC BUSINESS LOGIC DATA LOGIC Client 1 Client 2 Client N Three Tier Architecture
  • 11. Three Tier Architecture Three levels of layering. Advantage - Any modification in server side program which reflects all the clients. īąIt is good for medium size applications. Disadvantage īąNot suitable for large scale applications or enterprise applicationsâ€Ļ īąThe intermixing of business logic with other logic leads to complexity.
  • 12. Issues on Three-Tier Architecture LOAD BALANCING īą Server with lightest load. īą If Server overloaded – different server should be chosen. TRANSPARENT FAIL-OVER īą If a server crashes or if the network crashes can clients rerouted to other server without interruption of service. TRANSACTIONS īą What if two clients access the same row of the database simultaneously. īą What if the database crashes?
  • 13. DYNAMIC REDEPLOYMENT īą How do you perform software upgrades while site is running? īą Machine down or keep running. THREADING īą Processing multiple client requests simultaneously – server multi-threaded SECURITY īą The servers and databases need to be shielded from unknown users. Issues on Three-Tier Architecture contâ€Ļ
  • 14. LOGGING AND AUDITTING īą If something goes wrong, is there a log that we can consult to determine the cause of the problem. OBJECT LIFE CYCLE īą When client traffic increases or decreases respectively. īą The objects that live within server need to be created or destroyed. Issues on Three-Tier Architecture contâ€Ļ
  • 15. Together these services are called MIDDLEWARE services. Middleware services are available in Multi- tier architecture. Nowadays most of the applications are developed using Middleware technology. E.g.: EJB, CORBA, DCOM, .NET Framework. MIDDLEWARE
  • 17. īą In the past most of the companies built their own Middleware. īą The application servers were born to let you buy these middleware services, rather than build them yourself. īą Application servers allow developers to focus on server side application development and NOT WORRY about middleware services. īą E.g. Web Logic, IBM Web Sphere, Sun’s J2EE Server. APPLICATION SERVERS
  • 18. TYPES OF MIDDLEWARE īŽ Explicit Middleware īŽ Implicit Middleware
  • 19. EXPLICIT MIDDLEWARE our business logic is intertwined with the logic to call these middleware APIs.
  • 20. EXAMPLE īŽ transfer(Account account1, Account account2, long amount) { īŽ // 1: Call middleware API to perform a security check īŽ // 2: Call middleware API to start a transaction īŽ // 3: Call middleware API to load rows from the database īŽ // 4: Subtract the balance from one account, add to the other – Business Logic īŽ // 5: Call middleware API to store rows In the database īŽ // 6: Call middleware API to end the transaction īŽ } īŽ Example - Traditional distributed object technologies such as CORBA, DCOM, or RMI
  • 21. IMPLICIT MIDDLEWARE īŽ Write your distributed object to contain only business logic. īŽ Do not write to complex middleware APIs. īŽ For example, here’s the code that would run inside the distributed object transfer(Account account1, Account account2, long amount) { // 1: Subtract the balance from one account, add to the other }
  • 22. REQUEST INTERCEPTOR īą Declare the middleware services that the distributed object needs in a separate descriptor file, such as a plain text file. īą For example, you might declare that you need transactions, persistence, and a security check. īą The request interceptor intercepts requests from the client, performs the middleware that your distributed object needs and then delegates the call to the distributed object.
  • 23. IMPLICIT MIDDLEWARE (Gained through declarations). Newer, component-based technologies (EJB, CORBA Component Model, and Microsoft COM+)
  • 24. Enterprise Java Beans (EJB) Enterprise Java Beans (EJB) is a server – side component architecture that simplifies the process of building enterprise – class distributed component applications in java. Multi-tiered Architecture In multi-tiered application the various components that make up application are logically separated, across levels or layers of the network-computing environment. Distributed Applications In distributed applications the communication lies between two or more different objects running on different machines.
  • 25. SERVER SIDE COMPONENTS īŽ Applications should be constructing as group of components. īŽ Component is code that implements a set of well- defined interfaces. īŽ Components are not entire application – they cannot run alone. īŽ Components can be used as puzzle pieces to solve some larger problem. EXAMPLE īŽ Pricing Component – computes the prices of goods. īŽ Shipping Component – Cargo Shipping – Tracking the cargo status.
  • 26. PRICING RULES īŽ Base prices – ordering for single hard disk. īŽ Quantity discounts – ordering for more than 10 speakers. īŽ Bundling discounts – ordering for both hard disk and speakers. īŽ Preferred customer – big-name customers īŽ Locale discounts – depending upon where customer lives īŽ Overhead costs – shipping and taxes.
  • 27. īą Each company develops – wastage of resources īą Generic pricing component – reused for different customers. EXAMPLES īŽ U.S POSTAL SERVICE - compute shipping costs for mailing packages. īŽ AUTOMOBILE MANUFACTURER – determine prices for car īŽ ONLINE TEXTILE SHOPPING – determine prices for cloth items. REUSABILITY - COMPONENTS
  • 28. Types of EJB SESSION BEANS īŽ Session beans model business process. īŽ They are like verbs because they are actions – action could be anything. īŽ They contains business process – related logic. īŽ E.g.:- adding any numbers, Credit card verification, etc., ENTITY BEANS īŽ Entity beans model business data. īŽ They contain data-related logic. īŽ They are like nouns because they are data objects īŽ E.g.:- a product, an order, an employee or a credit card.
  • 29. Clients interacting with an EJB component system
  • 30. Roles in EJB EJB encourages participation of more than six different parties, The Bean Provider īŽ Supplies business components or enterprise beans. The Application Assembler īŽ Make components fit together īŽ Writes applications that combine components. The EJB Deployer īŽ How to deploy beans within servers īŽ Customize the beans for specific environment. The System Administrator īŽ Oversee the stability of the operational environment īŽ Monitoring of the deployed system.
  • 31. The Container and Service Provider īŽ EJB Container or Application server īŽ This is the runtime environment in which the bean lives. īŽ BEA’s Weblogic īŽ IBM’s WebSphere īŽ Oracle’s Oracle 9i īŽ JBoss open source application server. The Tool Vendor īŽ Integrated Development Environments – IDEs īŽ IBM’s visual age for Java īŽ Borland’s JBuilder.