COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation...
-
Upload
myles-franklin -
Category
Documents
-
view
212 -
download
0
Transcript of COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation...
![Page 1: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/1.jpg)
COM+
Ye Zhou
![Page 2: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/2.jpg)
MS Windows DNA
Distributed iNternet Application architecture 3-tier model
Presentation Business logic Data
.Net Framework
![Page 3: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/3.jpg)
Microsoft Transaction Server
Automatic Transaction Management Configurable Security Database Connection Pooling Component State Management Support for multiple databases and resources Process Isolation Automatic Thread supporting Integration(Windows, SNA,IIS,MSMQ,SQL..)
![Page 4: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/4.jpg)
Programming in MTS
Set ctxObject = GetObjectContext()
(Application Code)
Set objfoo = ctxObject.CreateInstance()
(Application Code)
If (OK) ctxObject.SetCompleteElse ctxObject.SetAbort
Set ctxObject = GetObjectContext()
(Application Code)
Set objfoo = ctxObject.CreateInstance()
(Application Code)
If (OK) ctxObject.SetCompleteElse ctxObject.SetAbort
Access MTS Context ObjectAccess MTS Access MTS
Context ObjectContext Object
Call Objects If Desired; Context
Passes Automatically
Call Objects If Call Objects If Desired; Context Desired; Context
Passes AutomaticallyPasses Automatically
Execution OK: Commit
Execution OK: Execution OK: CommitCommit
Execution Failed: Abort
Execution Failed: Execution Failed: AbortAbort
![Page 5: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/5.jpg)
Problems in MTS
Only static load balancing supported Rely on Windows NT platform No real object pooling (need dispenser)
![Page 6: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/6.jpg)
Microsoft Message Queue
Loosely-coupled Message Oriented Middleware Store-and-forwarding communication Defensive communication Concurrent execution Journaled communication Connectionless communication
![Page 7: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/7.jpg)
Advanced Features in MSMQ
Transaction supported Internet Messaging Message Queuing Triggers Group Communication Programmable management
![Page 8: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/8.jpg)
Programming in MSMQ
QUEUEHANDLE hQueue;//open queueMQOpenQueue( wcsFormatName, //queue format name
MQ_SEND_ACCESS, //access requestedMQ_DENY_NONE, //share mode&hQueue); //queue handle
//initialize message property…MQMSGPROPS MsgProps;//send messageMQSendMessage( hQueue, //queue handle
&MsgProps, //message propertiesNULL); //transaction
//close queueMQCloseQueue(hQueue); //queue handle
![Page 9: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/9.jpg)
COM+
Full integration of MTS into COM IMDB Queued components Dynamic Load Balancing A Publish and Subscribe Event Model Etc …
![Page 10: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/10.jpg)
CORBA vs DCOM vs RMICORBA DCOM RMI
Basic Object Corba.object IUnknown Rmi.Remote
Protocol IIOP ORPC JRMP/IIOP
Language Compatibility
Any with ORB libraries
Binary level, several Langs
Java only
Platform Any with ORB Any with COM Any with JVM
Object Name Mapping
Repository Registry RMIRegistry
Type Info Interface Repository
Type Library Reflection and Introspection
Distributed GC No Yes Yes
![Page 11: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/11.jpg)
MTS vs EJB
MTS
EJB
![Page 12: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/12.jpg)
MTS vs EJB (Cont’d)MTS EJB
Lifecycle & Instance Management
Mtxex.dll, Just In Time Activation
EJB Container, Instance Pooling
Connection Pooling ODBC Resource Dispenser JDBC 2.0
Distributed Transaction Support
MSDTC JTS, only some, e. g., IBM WebSphere
Portability Windows NT/COMTI Platform level, EJB server level
State Management Stateless, Shared Property Manager
Stateless or Stateful, Beans
Persistence User tasks BMP, CMP
Security Integrated with NT Integrated with java
![Page 13: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/13.jpg)
Other related products
IBM MQSeries Sun Java Message Service Sun Java Transaction Service OMG Object Transaction Service
![Page 14: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.](https://reader036.fdocuments.us/reader036/viewer/2022083008/56649ea15503460f94ba4ec1/html5/thumbnails/14.jpg)
References
[LEI00] Leinecker, Richard , “COM+ Unleashed”, SAMS, 2000
[COM02] http://www.microsoft.com/com
[EJB02] http://java.sun.com/products/ejb/
[RAJ02] Raj, Gopalan Suresh, “Web Cornucopia”, http://members.tripod.com/gsraj/