1 / 37

COM+ Architecture The Future of COM Mary Kirtland Program Manager COM Team Microsoft Corporation

COM+ Architecture The Future of COM Mary Kirtland Program Manager COM Team Microsoft Corporation. Agenda. Component Architectures Today COM+ Vision COM+ Services for Distributed Applications Call to Action. Build Three-Tier Applications Using Reusable Components. Presentation. Business.

Download Presentation

COM+ Architecture The Future of COM Mary Kirtland Program Manager COM Team Microsoft Corporation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COM+ Architecture The Future of COMMary Kirtland Program Manager COM TeamMicrosoft Corporation

  2. Agenda • Component Architectures Today • COM+ Vision • COM+ Services for Distributed Applications • Call to Action

  3. Build Three-Tier Applications Using Reusable Components Presentation Business Data

  4. Client COM: Simple, Powerful Programming Model • IUnknown • QueryInterface • AddRef • Release Server

  5. Object context Client MTS: Simple, Powerful Programming Model CreateInstance … OK: SetComplete … Err: SetAbort Server

  6. Desktop Work- group Depart- ment Division Enter- prise Internet & PSTN 1 user 2 users 100s 1,000s 10,000s 100,000s Shared data Connections Security Context Multithreading Load balancing Msg. queuing High avail. Multithread Multisite Multinode Problem: Complexity Increases With Scale

  7. Problem: Building Scalable Applications Clients Network Receiver Queue Connections Context Security Management Configuration Thread pool Service logic Synchronization Shared data

  8. Receiver Queue Connections Context Security Management Configuration Thread pool Service logic Synchronization Shared data Microsoft Transaction Server Easier Servers Client Network Receiver Queue Connections Context Security Management Configuration Thread Pool Service Logic Synchronization Shared Data Server Server

  9. Desktop Work- group Depart- ment Division Enter- prise Internet & PSTN 1 user 2 users 100s 1,000s 10,000s 100,000s Solution: One Application Fits All Transaction Server COM Components

  10. Are COM & MTS Perfect? No... • Administration could be easier • Versioning is hard to get right • Some features are only available to COM, others to MTS • Some services are missing • Some features can’t be used from all languages • Some extensibility points are missing • Some languages and tools aren’t “COM friendly”

  11. Introducing COM+Integrated, open to all languages Component Object Model Java Visual Basic C++ COBOL Other Runtime Services

  12. COM+ Vision Making it easier to develop, deploy, and administer components, component-based applications, tools, and services while preserving current investments in COM and MTS

  13. Realizing Our Vision • meet short term needs… • better administration • unify COM, MTS programming models • add services • ...then work with developer tools... • make tools “COM+ friendly” • ensure new features accessible to all • …and innovate

  14. COM+ Services Making it easier to develop, deploy, and administer scalable distributed applications while preserving current investments in COM and MTS • Single programming model • Further Simplification • Declarative, Meta-data driven • 100% compatible with existing applications • Single administration model • “Automatic Everything” services

  15. Transactions Dynamic Load Balancing Real Enough Time Loosely-Coupled Events Scheduler Pooled Resource Objects In Memory Database Automatic Data Binding Threading Context Security Administration COM+ Services“Automatic Everything”

  16. Transactions • features in MTS today, plus... • Auto-Abort • Auto-Complete • Bring Your Own Transaction

  17. Update Analysis Query Windows NT Server Bring Your Own Transactions SAPR/3 SQLServer COM+ Informix CICSMVS MSMQ IMSMVS Oracle Sybase DB2

  18. DCOM Query Analysis Query Analysis Update Analysis Query Update App Update Server Group COM+ COM+ COM+ Windows NT Server Windows NT Server Windows NT Server Load Balancing • Transparent to clients • Configurable Server Groups • Extensible routing • Compliments Wolfpack

  19. Real Enough Time • Based on transactions, messaging and objects • deferred obj execution • limit method params • no OUT or IN/OUT • no interface ptrs (v1) • deferred or direct • automatic transactions • Unifies connected/ disconnected • Increases scalability/availability

  20. DCOM Real Enough Time: Synch Windows Terminal Browser Object Object Object Object Transaction Transaction SQLServer SQLServer

  21. COM+ Recorder COM+ Player MSMQ MSMQ MSMQ Real Enough Time Same Components on this side Windows Terminal Browser CommonProgrammingModel Object Object Object Object Transaction Transaction Catalog: AsynchClass ID SQLServer Oracle

  22. Event service COM Catalog COM Explorer Scheduler Subscribeable events Persistent/transient subscriptions Event firing (multicast, sync/async, filtering) Local server activation Windows NT Battery Low Issue SNMP Alert Exchange Mail Arrived Update Spreadsheet IIS Page Changed Update Client Cache MTS Threshhold Hit Fire Up Connections Loosely-Coupled Events Scenarios: Publisher Fires Event Subscribers

  23. Scheduler • Scheduled object execution • Event-based • time • login • undock • file creation, update, delete • object completion • Persistent schedules • Compliments NT scheduler

  24. Data Binding • Simplify creating data objects • for preexisting data • bridges objects/relational DBMS • Extends ADO Record Sets • record-set objects • early-bound parameterized views • property per column • Create, insert, update, delete, ...

  25. Pooled Resource Objects • Extend MTS component model to maintain expensive state • Connections, queries, etc. • Alternative to Resource Dispensers • Runtime advantages • increased concurrency • availability (hot start) • governors • admin (status, stats, configuration)

  26. In-Memory Database • Single node IMDB • OLEDB & ADO • Standalone and transparent DB cache • OLEDB & ADO • SQL Server & Oracle • Look aside cache for persistence • Futures • Multi-node • Partitioned

  27. Extending MTS Context • Integrates MTS Context into COM • Eliminates saferef for MTS programmers • Performance advantages • Client-side context support • Application-defined context • Add behavior to existing objects

  28. Threading • Separate threading from synchronization • Better performance and scalability through • Fewer threads • Fewer thread switches • No object thread affinity • Simplifies re-writing legacy DLLs to use COM

  29. Security • Finer granularity security settings • Roles on an component • Roles on methods • Security boundaries through context and policies • Role based security available to COM objects

  30. Administration • Centralized Configuration Management • Distributed Catalog using NTDS and CompLib • Registration System • Service to register self-describing components • Server Groups • Supports mass re-configuration and dynamic load balancing

  31. Administration • Automatic Code Download • Client and server download at activation time • Enhanced Package Model • Increased deployment flexibility • Multiple packages in a process • Roles across packages • Versioning Support • Configuration model with version constraints

  32. Administration • Enterprise Application Management • Monitoring/alerting at application scope • COM Explorer • UI for deployment, configuration and monitoring • Scriptable Administration SDK • All features available through scriptable object model

  33. Summary • From COM to MTS to COM+ is an evolutionary path • COM+ dramatically simplifies and extends COM, the world’s most successful object model • COM+ provides even more services for writing distributed applications

  34. Call to Action • Use COM now! • Start a 321 project • Read Nov97, Dec97 MSJ articles on COM+

  35. 321 Project Defined • Three-tier • Reusable component applications • Two developers • With existing skill with a tool like Visual C++, Visual Basic, Visual J++, etc. • One month • Design, develop, deploy • Leverage existing infrastructure • Database, tools, LAN, WAN, PC • Pick a simple, non-critical application • From your backlog • Finish, debrief, adjust, and iterate

  36. Resources • MSJ Nov, Dec Issues • COM Home Page http://www.microsoft.com/com/ • DCOM Mailing List http://www.microsoft.com/sitebuilder/resource/mail.asp • Feedback Alias mailto:comwish@microsoft.com

  37. http://www.microsoft.com/msdn/pdc

More Related