320 likes | 357 Views
COM+. Mon. Tue. Wed. Thur. Fri. 9:00. Overview. TP mons. Log. Files &Buffers. B-tree. Greg Hope Architect Microsoft COM+ Team. 11:00. Faults. Lock Theory. ResMgr. COM+. Access Paths. 1:30. Tolerance. Lock Techniq. CICS & Inet. Corba. Groupware. 3:30. T Models. Queues.
E N D
COM+ Mon Tue Wed Thur Fri 9:00 Overview TP mons Log Files &Buffers B-tree Greg Hope Architect Microsoft COM+ Team 11:00 Faults Lock Theory ResMgr COM+ Access Paths 1:30 Tolerance Lock Techniq CICS & Inet Corba Groupware 3:30 T Models Queues Adv TM Replication Benchmark 7:00 Party Workflow Cyberbrick Party WICS: COM+
Agenda • Where we’ve been • COM, OLE, ActiveX Controls, MTS, WinDNA • Where we are • COM+ 1.0, Windows 2000 • Attribute based programming model • New and better services • Where we’re going • Web Computing • Appliance Computing • Simplicity and Reliability WICS: COM+
Microsoft: COM+ Inside Linking and Embedding Automation ActiveX Controls Authenticode DCOM MTS Component Services WICS: COM+
Tools: COM+ Inside WebDeveloper ApplicationDeveloper System Developer Content Developer Borland Latte Adobe PageMaker Borland Delphi Borland Intrabuilder NetObjects Fusion PowerSoft PowerBuilder Macromedia Director PowerSoft NetImpact SoftQuad HotMetal Pro WICS: COM+
COM+ Worlds Most Successful Object Model • Strong technical features • Binary standard, language neutral, dynamic discovery • Proven flexible and adaptable • OLE, Compound Documents, ActiveX Controls, MTS • Used on >200M systems world-wide • Widespread tool and language support • > 3M developers • Visual Studio and third parties • Thriving component marketplace • ActiveX Controls WICS: COM+
Databases Legacy Systems ExternalApplications Thin Client Rich Client Windows DNAA comprehensive platform scaling from the department to the Internet “How you gather, manage and use information will determine whether you win or lose.” Bill Gates, Business @ the Speed of Thought WICS: COM+
PC Week Labs Benchmark “It's clear the company's IIS (Internet Information Server) Web server and MTS (Microsoft Transaction Server) transaction monitor, both included with the Windows NT 4.0 operating system, are fast enough for any business on earth.” (http://www.zdnet.com/pcweek/stories/news/0,4153,409380,00.html) WICS: COM+
Performance: IIS on COM+/NT5 is up to 6x faster than IIS on MTS/NT4 (* beta results) WICS: COM+
TPC-C: COM+ and SQL Server WICS: COM+
Administration Servers Transactions Security Queuing Events Clusters IMDB Data-types Self Describing Dynamic Invocation “Leak-proof” Memory Context Interception SERVICES RUN TIME COM Tools Developers UbiquityMarket Multi-Language Discovery COM+ WICS: COM+
1997 COM/MTS (NT4OP) Servers Transactions Administration COM+: Incremental, Additive Investment 1999 (B3 now) COM+ 1.0 (Win2000) Integrated and Enhanced Queuing Events Load Balancing IMDB 1992 COM (Win3.1) OLE Cmpd Docs Automation 1996 COM (NT4) Remoting Security ActiveX Controls WICS: COM+
Context Client Programming ModelInterface, Attributes, Context IUnknown Attributes Server WICS: COM+
Context Attributes Server Catalog Programming ModelImplementation • Attributes determine Context • Metadata accessed via Catalog interfaces • Stored in Component Library • Integrated with DS / MSI / Registry • Client negotiation via monikers • Context determines Intercepters • Intercepter implements attribute semantics Client Interceptors WICS: COM+
ActivatorsIntercepting Object Creation Machine Activators Process Activators Client Process Server Process Context Activators B Server Context A WICS: COM+
PoliciesIntercepting Method Invocation Context C2 Context C1 Proxy Stub (Cross Apartment or Process) A B (Same Apartment) Client Side Policies Server Side Policies Pass Buffer Call,Return Enter,Leave Pass Buffer WICS: COM+
Queued MSMQ Client Queueable Server Recorder Player Catalog Example:Queued Components Client Server pBook = new [Queued] Book; pBook.Order(nQuantity); [Queueable] Class Book { public void Order(int nAmount) {…} } WICS: COM+
Server Example: Automatic Transactions Client Server pBook = new Book; pBook.Order(nQuantity); [Transacted] Class Book { public void Order(int nAmount) {…} } Client Transaction DTC Data WICS: COM+
Server Server Server Example: Component Load Balancing Client Server pBook = new Book; pBook.Order(nQuantity); [LoadBalanceable] Class Book { public void Order(int nAmount) {…} } Client Application Cluster Router Response Time Tracker WICS: COM+
Performance: Load Balancing Near Linear Scaling (* beta results) WICS: COM+
Server Server Server Example: Object Pooling Client Server pBook = new Book; pBook.Order(nQuantity); [Poolable] Class Book { Public void Order(int nAmount) {…} } Pooler Client WICS: COM+
Performance: Object Pooling (* beta results) WICS: COM+
Performance: Object Pooling Governors Give Same Throughput with less resources (* beta results) WICS: COM+
Web Appliances Simplicity Reliability COM+: TamingDisruptive Forces “...products that do not appear to be useful to our customers today (that is disruptive technologies) may squarely address their needs tomorrow.” Clayton M. Christensen The Innovators Dilema WICS: COM+
Web ComputingDisruptive Technology? “overperforming” Win98/NT Win 3.x MS-DOS Web 1.0 “good enough” Mainframe Computing Era Personal Computing Era Web Computing Era WICS: COM+
Dunce Today’s “Good Enough” Web (Not!) • Hourglasses • World Wide Wait • User state is tied to a machine(Cookies, Wallet, Preferences) • Multiple systems, multiple users • Unreliable parts (Leaks, hangs, reboots, network) • Duplicate or missing orders • Unavailability/data corruption • Clients are underutilized • Lowest common denominator effect • Servers are hard • Handling concurrent requests • State management WICS: COM+
Connecting Windows Clients and Windows Servers via Web (HTTP) Richest user experience (Adaptive UI) Consumers Web Lifestyle applications (ecomm, games, calendar ) Business Web Enabled personal productivity (collaboration, add-ons) Web Native (ecomm, games) Web Access (departmental, corporate LOB apps) Service Providers ISP’s, Web Farms Simplicity via reduction, consistency, unification Reliability self-everything, tamper-proof Scalability up, down, out WinDNA on the Web WICS: COM+
Data Order Catalog Reach Rich Rich Cart Server Logic Presentation Rendering Client Logic N-tier: Web Computing Model • Presentation - Code that binds to rendering • May vary depending on type/functionality of client • Rendering - Interacts with User • Client Logic - Client code that talks to the Server • May run on client, personal tier, or server • May have access to read-only snapshot data (catalog) • May manage per-client writable data (shopping cart) • Server Logic - Server code that runs the business • Direct access to business data • Database - Shared, Persistent store WICS: COM+
Windows 98, Windows 2000 Appliance Computing:Disruptive Technology? AutoPC WebTV Gaming eBooks Phone “Why good products can fail, the Personal Computer is so complex, and Information Appliances are the solution”Donald A. Norman, The Invisible Computer Smart objects WICS: COM+
Public networks PSTN, Internet Network camera HomePNA Phone Line Network Power Line Network Hub Hub Web phone Printer IEEE 1394 HomeRF Entertainment Center Communications and control Camera Scanner Home Networking Internal Details Are Complex WICS: COM+
Public networks PSTN, Internet What Users & Apps Must SeeConsistent Objects Everywhere WICS: COM+
Getting Started • WinDNA www.microsoft.com/dna • COM+ www.microsoft.com/complus • Windows 2000 www.microsoft.com/windows • Tools msdn.microsoft.com/vstudio WICS: COM+