COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation...

14
COM+ Ye Zhou

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.

COM+

Ye Zhou

Page 2: COM+ Ye Zhou. MS Windows DNA Distributed iNternet Application architecture 3-tier model Presentation Business logic Data.Net Framework.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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/