Microsoft Transaction Server COM + Jim Lyon HPTS 99.
-
Upload
luis-gallegos -
Category
Documents
-
view
212 -
download
0
Transcript of Microsoft Transaction Server COM + Jim Lyon HPTS 99.
Microsoft Transaction ServerCOM +
Jim LyonHPTS ’99
COM Overview
• Original goal: allow code from different organizations to cooperate inside a process.– Different compilers.– Different languages.– Different release schedules.
• Wildly successful:– Introduced circa 1990.– Underlies OLE.– $1billion market in third-party objects.– On every windows system, and some others.
COM Overview
• Basic concept: interface pointer– Expresses function signature contract and some
semantics.– Similar to Java interface.
• Each object implements 1 or more interfaces.– Dynamically discoverable.
• Single inheritance of interface definitions.
COM Overview
• COM is a binary, runtime standard:– Interface pointer: a pointer to a pointer to an
array of pointers to functions.– Completely neutral to language or runtime
environment.– Supported from C, C++, VB, Cobol, Java, and
various interpreters, and a host of third-party environments.
COM Evolution
• Distributed COM (1995)– Put clients and servers on different machines,
via proxy/stub technology.
• MTS (1996, 1998), COM+ (2000)– Add declarative behavior to server objects.
MTS, COM+
• Goal: Make it easy to create OLTP applications.
• Design points:– Allow programmer to think serially
• Leave the multithreading to us
– Get system services declaratively.
MTS Services
• Security (access control, auditing)
• Serialization
• Transactions
• Object lifetime
• Others
• Model largely copied by EJB.
MTS is Winning
Yes (85%)
No (15%)
Does your organization use MTS?
0%
10%
20%
30%
40%
Project Phases
Success Factor:Your Choice of Languages
0%
20%
40%
60%
80%
100%
VB C++ Java O ther0.0
1.0
2.0
3.0
Mil l ions
VB C /C++ Java Cobol
Programmer Population Language Use with MTS
Other Success Factors
• Microsoft is focused on making it work.
• Consortia are frequently focused on:– Getting a spec published.– Ensuring that no competitor gets an advantage.– Trying to fight a common enemy.– Religion (“write once, debug everywhere”)
Other Success Factors
• Integration– Push the ORB into the OS.– Push the Web Server into the OS.
• Evolution“Every large system that works has evolved from
a small system that worked.” (Fred Brooks)