middleware technology
DESCRIPTION
Middleware Technology. Communication Mechanisms Synchronous – process on client side must stop and wait until server reply is received. Classic programming model Asynchronous – process on client side may proceed to do other work while waiting for server reply Modern multi-threaded languages - PowerPoint PPT PresentationTRANSCRIPT
MW TechIS 8040 Data Comm and NetworkingDr. Hoganson
Middleware Technology
Communication Mechanisms
• Synchronous – process on client side must stop and wait until server reply is received.
– Classic programming model
• Asynchronous – process on client side may proceed to do other work while waiting for server reply
– Modern multi-threaded languages
– Java, VB, Delphi
– Adds another “wrinkle” – communication is not just between machines, but between specific processes on specific machines – TCP/IP protocol accommodates this concept – Port #
MW TechIS 8040 Data Comm and NetworkingDr. Hoganson
Remote Procedure Call
• Procedural languages – Cobol, Pascal, C, etc
• The client “calls” a subroutine that happens to reside on the server rather than the local machine
• Synchronous – stop and wait for reply
• DCE “open” standard (Distributed Computing Environment)
MW TechIS 8040 Data Comm and NetworkingDr. Hoganson
Message-Oriented
• Message Passing
• Requires a Message Protocol (a standard)
1. Client packages request into message format
2. Client transmits message
3. Server received message
4. Server un-packs request from message
5. Server computes/retrieves formulates reply
6. Server packages reply into a message format
7. Server transmits message
8. Client receives message
9. Client un-packs reply from message
10. Etc.
MW TechIS 8040 Data Comm and NetworkingDr. Hoganson
Object-Oriented
• Object to Object, rather than procedure to procedure
• Object sends a message (a method call) to another object
• Objects can be multithreaded, so supports both synchronous and asynchronous
• CORBA: Common Object Request Broker Architecture
• DCOM: Distributed Common Object Model (Microsoft proprietary)
MW TechIS 8040 Data Comm and NetworkingDr. Hoganson
Concurrent Processing
• Multiple concurrent processes
• A form of parallel processing
• Introduces synchronization and communication issues
• A useful model: Petri Nets
Process State
Transition
Process State
Process State
Transition
Process State
Resource
Transitions may require resources
Token
MW TechIS 8040 Data Comm and NetworkingDr. Hoganson
Client/Server Petri Net
• Synchronized Client/Server
Computing
Idle
Waiting
ProcessReply
Waiting
ProcessRequest
Request
Reply