Microsoft Transaction Server COM Jim Lyon HPTS 99
- Slides: 11
Microsoft Transaction Server COM + Jim Lyon HPTS ’ 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. $1 billion 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 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 Does your organization use MTS? Yes (85%) No (15%) Project Phases
Success Factor: Your Choice of Languages 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)