SlideShare a Scribd company logo
COM+ and MSMQ 
Srinivasan.G
Windows DNAA comprehensive 
platform scaling from the department to the 
Internet 
Legacy 
Systems 
External 
Application 
s 
Database 
s 
Thin 
Client 
Rich 
Client
Keys to Windows DNA 
●Three-tier Application Architecture 
okey for scalable, distributed applications 
●Cooperating Components 
oreusable, binary, pieces of software that provide 
services 
okey to incremental, flexible development 
●Enablers 
oTools 
oMiddleware ⇨ Application Services 
oInteroperability
Non-Functional Requirements 
●Performance Requirements 
oResponse time 
oNumber of clients 
oAvailability 
●Deployment Constraints 
oExisting databases & applications 
oTopology 
●Security Requirements 
oData protection 
oUser authorization 
●Transaction & Workflow Constraints
Application Services 
●COM+ 
oRuntime environment for COM components 
oDeclarative, rich infrastructure 
oDistributed Transaction Coordinator (DTC) 
oAdministration tool 
●Microsoft Message Queue Server (MSMQ) 
oRich messaging programming model 
and infrastructure 
oFlexible; e.g., exactly once, guaranteed delivery
Collaboration via MSMQ 
Win32 
MSMQ 
Presentation Business Data
COM+ application 
SQL 
Server 
Win32 
Business 
Object 
Data 
Objec 
t 
COM+ 
DCOM 
ADO 
Presentation Business Data
Component Design vs OOA/D 
●Component design and OOA/D are 
different 
●OOA/D focuses on modeling ‘things’ 
●Component design focuses more on 
services 
●OOA/D/P is often used to implement 
components but not sufficient 
●Pure object designs aren’t always good 
component designs
COM Programming ModelObjects 
and Interfaces 
Component 
Client 
Class 
Factory 
IClassFactory 
IUnknown 
Registration 
Packaging 
Object 
IClassFactory
COM+: Simple, Powerful 
Architecture 
IUnknow 
n 
Context 
CreateInstance 
… 
OK: SetComplete 
… 
Err: SetAbort 
Attrib 
utes
COM+ Model Benefits 
●Simplification through reduction 
oIncrease abstraction 
o“Zero plumbing” 
●Simple programming model 
oClients: Create, use, release 
oServers: Do work 
●Simple, extensible architecture 
oInterceptors
COM+ Model Benefits 
●The glue in Windows DNA 
oComponent Model + Services 
oLanguage agnostic 
oOnline & offline 
oCentralized & distributed 
oWeb & client-server
COM+ Features 
●Servers 
●Transactions 
●Security 
●Administration 
●Load Balancing 
●Queued Components 
●Events
Problem: Server Programming is 
Difficult 
●Difficult to write servers 
oThreading 
oConcurrency 
oProcess Management 
oN-Tier Complexity 
oDeployment
COM+: Servers Made Easy 
●Design components as a client application 
oSingle user, single thread, no process concern 
●Write components in ANY language 
oVB, VJ, VC, Cobol, whatever 
●Deploy as 1, 2, 3 or N-tier Application 
oDrag and drop simplicity
Problem: Security Is Complicated 
●Many different users sharing the same 
components 
●Different users require different security 
solutions 
●Distributed applications
COM+: Role-based Security 
●Role-based security 
●Method-level security 
●Context ‘flows’ the security information 
●Abstracts security settings 
oEasier for the user
Problem: Management is Difficult 
●Managing hundreds or thousands of 
clients 
●Managing tens or hundreds of servers 
●Monitoring System Activity 
●GUIs are too laborious for large systems
COM+: Administration 
●MMC Snap In - Easy to Use 
●Scriptable Interfaces - Full function 
●System events are logged for Measuring 
Monitoring and Metering
Component Services 
●Components can be decorated with 
attributes 
odeclarative 
oconfigurable
Problem: Continue to Work When Servers are 
Unavailable 
Problem: Smooth the Demand of Your system 
●Different components are needed for 
connected and disconnected versions of 
the same application 
●Deployment of two applications is difficult 
●No way to govern system load for 
consistent server performance 
●Scale limitations
COM+: Queued Components 
●Based on unification of objects, 
transactions, and messaging 
oDeferred obj execution 
oAutomatic transactions 
●Unifies connected / disconnected 
application design 
●Increases scalability / availability
Problem: Customers Want to Add 
machines to increase Performance 
●Small servers are dropping down in prices 
●Distribute system load across systems 
with no changes to the application (client 
OR server) 
●Increase availability
COM+: Load Balancing 
●Transparent to clients 
●Controlled via Admin 
oReplicated Automatically 
●Simple routing 
oDesigned for extensibility 
●Single router per application cluster 
oRouter can fail over via resource cluster
Dynamic Load Balancing 
●In addition to static load balancing or DNS 
round-robin, COM+ provides dynamic load 
balancing 
oUses response time algorithm 
oLoad balance on creation only 
●Use to improve scalability, availability 
●Most COM+ components are load-balanceable 
oBeware of machine affinities
Object Pooling 
●COM+ supports pooling 
●Lets you build a homogeneous pool of objects 
oPer-process 
oObjects can not have thread-affinity 
oPool can be initialized in the background 
oPool sizes set administratively 
●Use to govern the maximum number of objects 
created 
●May be useful if construction costs are high 
oTest to see if you get a performance benefit
Problem: Proprietary Event 
Services 
●Enterprise applications need event 
services 
oNotify other components that something 
‘interesting’ has happened 
●Customers forced to design and 
implement their own solutions 
●Integration with other application 
events becomes difficult
COM+ Event Services 
●Publish and subscribe model 
●Late bound design 
●Notifications sent by COM 
Publisher 
Event 
Database 
Subscriber 
Event Service Subscriber 
Subscriber 
Administration

More Related Content

What's hot

.Net framework
.Net framework.Net framework
.Net framework
Om Vikram Thapa
 
Vb6 vs vb.net....(visual basic) presentation
Vb6 vs vb.net....(visual basic) presentationVb6 vs vb.net....(visual basic) presentation
Vb6 vs vb.net....(visual basic) presentation
Iftikhar Ahmad
 
The .NET Platform - A Brief Overview
The .NET Platform - A Brief OverviewThe .NET Platform - A Brief Overview
The .NET Platform - A Brief OverviewCarlos Lopes
 
.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .net
pinky singh
 
.net CLR
.net CLR.net CLR
.net CLR
DevTalk
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodect
Yesu Raj
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET Platform
Peter R. Egli
 
Bn1001 demo ppt advance dot net
Bn1001 demo ppt advance dot netBn1001 demo ppt advance dot net
Bn1001 demo ppt advance dot net
conline training
 
An isas presentation on .net framework 2.0 by vikash chandra das
An isas presentation on .net framework 2.0 by vikash chandra dasAn isas presentation on .net framework 2.0 by vikash chandra das
An isas presentation on .net framework 2.0 by vikash chandra das
Vikash Chandra Das
 
Asp.net new
Asp.net newAsp.net new
Asp.net new
Ganesh Jaya
 
Common language runtime clr
Common language runtime clrCommon language runtime clr
Common language runtime clr
SanSan149
 
Microsoft.Net
Microsoft.NetMicrosoft.Net
Microsoft.Net
Vishwa Mohan
 
Dotnet ch1
Dotnet ch1Dotnet ch1
Dotnet ch1
007laksh
 
AXCIOMA, the internals, the component framework for distributed, real-time, a...
AXCIOMA, the internals, the component framework for distributed, real-time, a...AXCIOMA, the internals, the component framework for distributed, real-time, a...
AXCIOMA, the internals, the component framework for distributed, real-time, a...
Remedy IT
 
CORBA Programming with TAOX11/C++11 tutorial
CORBA Programming with TAOX11/C++11 tutorialCORBA Programming with TAOX11/C++11 tutorial
CORBA Programming with TAOX11/C++11 tutorial
Remedy IT
 
Integrating DDS into AXCIOMA, the component approach
Integrating DDS into AXCIOMA, the component approachIntegrating DDS into AXCIOMA, the component approach
Integrating DDS into AXCIOMA, the component approach
Remedy IT
 

What's hot (20)

.Net framework
.Net framework.Net framework
.Net framework
 
Vb6 vs vb.net....(visual basic) presentation
Vb6 vs vb.net....(visual basic) presentationVb6 vs vb.net....(visual basic) presentation
Vb6 vs vb.net....(visual basic) presentation
 
The .NET Platform - A Brief Overview
The .NET Platform - A Brief OverviewThe .NET Platform - A Brief Overview
The .NET Platform - A Brief Overview
 
Introduction to .net
Introduction to .netIntroduction to .net
Introduction to .net
 
.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .net
 
.net CLR
.net CLR.net CLR
.net CLR
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodect
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET Platform
 
Chapter 6-Remoting
Chapter 6-RemotingChapter 6-Remoting
Chapter 6-Remoting
 
Bn1001 demo ppt advance dot net
Bn1001 demo ppt advance dot netBn1001 demo ppt advance dot net
Bn1001 demo ppt advance dot net
 
An isas presentation on .net framework 2.0 by vikash chandra das
An isas presentation on .net framework 2.0 by vikash chandra dasAn isas presentation on .net framework 2.0 by vikash chandra das
An isas presentation on .net framework 2.0 by vikash chandra das
 
Asp.net new
Asp.net newAsp.net new
Asp.net new
 
DOTNET
DOTNETDOTNET
DOTNET
 
Common language runtime clr
Common language runtime clrCommon language runtime clr
Common language runtime clr
 
Microsoft.Net
Microsoft.NetMicrosoft.Net
Microsoft.Net
 
Dotnet ch1
Dotnet ch1Dotnet ch1
Dotnet ch1
 
AXCIOMA, the internals, the component framework for distributed, real-time, a...
AXCIOMA, the internals, the component framework for distributed, real-time, a...AXCIOMA, the internals, the component framework for distributed, real-time, a...
AXCIOMA, the internals, the component framework for distributed, real-time, a...
 
CORBA Programming with TAOX11/C++11 tutorial
CORBA Programming with TAOX11/C++11 tutorialCORBA Programming with TAOX11/C++11 tutorial
CORBA Programming with TAOX11/C++11 tutorial
 
Integrating DDS into AXCIOMA, the component approach
Integrating DDS into AXCIOMA, the component approachIntegrating DDS into AXCIOMA, the component approach
Integrating DDS into AXCIOMA, the component approach
 
C O R B A Unit 4
C O R B A    Unit 4C O R B A    Unit 4
C O R B A Unit 4
 

Similar to COM+ & MSMQ

Cpp In Soa
Cpp In SoaCpp In Soa
Cpp In SoaWSO2
 
Keepler | What's next on Google Cloud?
Keepler | What's next on Google Cloud? Keepler | What's next on Google Cloud?
Keepler | What's next on Google Cloud?
Keepler Data Tech
 
Zero Downtime JEE Architectures
Zero Downtime JEE ArchitecturesZero Downtime JEE Architectures
Zero Downtime JEE Architectures
Alexander Penev
 
Migrate to Microservices Judiciously!
Migrate to Microservices Judiciously!Migrate to Microservices Judiciously!
Migrate to Microservices Judiciously!
pflueras
 
Design patterns for scaling web applications
Design patterns for scaling web applicationsDesign patterns for scaling web applications
Design patterns for scaling web applications
Ivan Dimitrov
 
Hassle-free IoT projects with DeviceHive — Artyom Sorokin (Tech Stage)
Hassle-free IoT projects with DeviceHive — Artyom Sorokin (Tech Stage)Hassle-free IoT projects with DeviceHive — Artyom Sorokin (Tech Stage)
Hassle-free IoT projects with DeviceHive — Artyom Sorokin (Tech Stage)
Black Sea Summit — IT-conference in Odessa
 
JavaScript for Enterprise Applications
JavaScript for Enterprise ApplicationsJavaScript for Enterprise Applications
JavaScript for Enterprise Applications
Piyush Katariya
 
Build A Scalable Mobile App
Build A Scalable Mobile App Build A Scalable Mobile App
Build A Scalable Mobile App
Mohamed Aboul-Fotouh
 
Ghost Environment
Ghost EnvironmentGhost Environment
Ghost Environment
PratipD
 
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupPreparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
YashrajNayak4
 
NetflixOSS Meetup S6E1 - Titus & Containers
NetflixOSS Meetup S6E1 - Titus & ContainersNetflixOSS Meetup S6E1 - Titus & Containers
NetflixOSS Meetup S6E1 - Titus & Containers
aspyker
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
Lucian Neghina
 
Automating using Ansible
Automating using AnsibleAutomating using Ansible
Automating using Ansible
Alok Patra
 
Cloud Computing workshop
Cloud Computing workshopCloud Computing workshop
Cloud Computing workshop
Suraj Kumar Jana
 
Microservice
MicroserviceMicroservice
Microservice
Viney Shih
 
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
Haggai Philip Zagury
 
The FN Project by Maximilian Jerg
The FN Project by Maximilian JergThe FN Project by Maximilian Jerg
The FN Project by Maximilian Jerg
Harald Schmaldienst
 
Xpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case StudyXpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case Study
Denys Vasyliev
 
Service-Mesh-Presentation.pdf
Service-Mesh-Presentation.pdfService-Mesh-Presentation.pdf
Service-Mesh-Presentation.pdf
chanhluc2112
 
Discover MongoDB Atlas and MongoDB Stitch - DEM02-S - Mexico City AWS Summit
Discover MongoDB Atlas and MongoDB Stitch - DEM02-S - Mexico City AWS SummitDiscover MongoDB Atlas and MongoDB Stitch - DEM02-S - Mexico City AWS Summit
Discover MongoDB Atlas and MongoDB Stitch - DEM02-S - Mexico City AWS Summit
Amazon Web Services
 

Similar to COM+ & MSMQ (20)

Cpp In Soa
Cpp In SoaCpp In Soa
Cpp In Soa
 
Keepler | What's next on Google Cloud?
Keepler | What's next on Google Cloud? Keepler | What's next on Google Cloud?
Keepler | What's next on Google Cloud?
 
Zero Downtime JEE Architectures
Zero Downtime JEE ArchitecturesZero Downtime JEE Architectures
Zero Downtime JEE Architectures
 
Migrate to Microservices Judiciously!
Migrate to Microservices Judiciously!Migrate to Microservices Judiciously!
Migrate to Microservices Judiciously!
 
Design patterns for scaling web applications
Design patterns for scaling web applicationsDesign patterns for scaling web applications
Design patterns for scaling web applications
 
Hassle-free IoT projects with DeviceHive — Artyom Sorokin (Tech Stage)
Hassle-free IoT projects with DeviceHive — Artyom Sorokin (Tech Stage)Hassle-free IoT projects with DeviceHive — Artyom Sorokin (Tech Stage)
Hassle-free IoT projects with DeviceHive — Artyom Sorokin (Tech Stage)
 
JavaScript for Enterprise Applications
JavaScript for Enterprise ApplicationsJavaScript for Enterprise Applications
JavaScript for Enterprise Applications
 
Build A Scalable Mobile App
Build A Scalable Mobile App Build A Scalable Mobile App
Build A Scalable Mobile App
 
Ghost Environment
Ghost EnvironmentGhost Environment
Ghost Environment
 
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupPreparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
 
NetflixOSS Meetup S6E1 - Titus & Containers
NetflixOSS Meetup S6E1 - Titus & ContainersNetflixOSS Meetup S6E1 - Titus & Containers
NetflixOSS Meetup S6E1 - Titus & Containers
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
 
Automating using Ansible
Automating using AnsibleAutomating using Ansible
Automating using Ansible
 
Cloud Computing workshop
Cloud Computing workshopCloud Computing workshop
Cloud Computing workshop
 
Microservice
MicroserviceMicroservice
Microservice
 
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
 
The FN Project by Maximilian Jerg
The FN Project by Maximilian JergThe FN Project by Maximilian Jerg
The FN Project by Maximilian Jerg
 
Xpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case StudyXpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case Study
 
Service-Mesh-Presentation.pdf
Service-Mesh-Presentation.pdfService-Mesh-Presentation.pdf
Service-Mesh-Presentation.pdf
 
Discover MongoDB Atlas and MongoDB Stitch - DEM02-S - Mexico City AWS Summit
Discover MongoDB Atlas and MongoDB Stitch - DEM02-S - Mexico City AWS SummitDiscover MongoDB Atlas and MongoDB Stitch - DEM02-S - Mexico City AWS Summit
Discover MongoDB Atlas and MongoDB Stitch - DEM02-S - Mexico City AWS Summit
 

More from G Srinivasan

Experiments around Mobile Learning
Experiments around Mobile LearningExperiments around Mobile Learning
Experiments around Mobile Learning
G Srinivasan
 
Skill development – student view
Skill development – student viewSkill development – student view
Skill development – student viewG Srinivasan
 
Indian education space Gyan
Indian education space  GyanIndian education space  Gyan
Indian education space GyanG Srinivasan
 
Mobile Testing : Brief OverView
Mobile Testing : Brief OverViewMobile Testing : Brief OverView
Mobile Testing : Brief OverView
G Srinivasan
 
ArthaVidhya brochure
ArthaVidhya brochureArthaVidhya brochure
ArthaVidhya brochure
G Srinivasan
 
Mobi sir presentation
Mobi sir presentationMobi sir presentation
Mobi sir presentationG Srinivasan
 

More from G Srinivasan (6)

Experiments around Mobile Learning
Experiments around Mobile LearningExperiments around Mobile Learning
Experiments around Mobile Learning
 
Skill development – student view
Skill development – student viewSkill development – student view
Skill development – student view
 
Indian education space Gyan
Indian education space  GyanIndian education space  Gyan
Indian education space Gyan
 
Mobile Testing : Brief OverView
Mobile Testing : Brief OverViewMobile Testing : Brief OverView
Mobile Testing : Brief OverView
 
ArthaVidhya brochure
ArthaVidhya brochureArthaVidhya brochure
ArthaVidhya brochure
 
Mobi sir presentation
Mobi sir presentationMobi sir presentation
Mobi sir presentation
 

Recently uploaded

How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
MayankTawar1
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
KrzysztofKkol1
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 

Recently uploaded (20)

How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 

COM+ & MSMQ

  • 1. COM+ and MSMQ Srinivasan.G
  • 2. Windows DNAA comprehensive platform scaling from the department to the Internet Legacy Systems External Application s Database s Thin Client Rich Client
  • 3. Keys to Windows DNA ●Three-tier Application Architecture okey for scalable, distributed applications ●Cooperating Components oreusable, binary, pieces of software that provide services okey to incremental, flexible development ●Enablers oTools oMiddleware ⇨ Application Services oInteroperability
  • 4. Non-Functional Requirements ●Performance Requirements oResponse time oNumber of clients oAvailability ●Deployment Constraints oExisting databases & applications oTopology ●Security Requirements oData protection oUser authorization ●Transaction & Workflow Constraints
  • 5. Application Services ●COM+ oRuntime environment for COM components oDeclarative, rich infrastructure oDistributed Transaction Coordinator (DTC) oAdministration tool ●Microsoft Message Queue Server (MSMQ) oRich messaging programming model and infrastructure oFlexible; e.g., exactly once, guaranteed delivery
  • 6. Collaboration via MSMQ Win32 MSMQ Presentation Business Data
  • 7. COM+ application SQL Server Win32 Business Object Data Objec t COM+ DCOM ADO Presentation Business Data
  • 8. Component Design vs OOA/D ●Component design and OOA/D are different ●OOA/D focuses on modeling ‘things’ ●Component design focuses more on services ●OOA/D/P is often used to implement components but not sufficient ●Pure object designs aren’t always good component designs
  • 9. COM Programming ModelObjects and Interfaces Component Client Class Factory IClassFactory IUnknown Registration Packaging Object IClassFactory
  • 10. COM+: Simple, Powerful Architecture IUnknow n Context CreateInstance … OK: SetComplete … Err: SetAbort Attrib utes
  • 11. COM+ Model Benefits ●Simplification through reduction oIncrease abstraction o“Zero plumbing” ●Simple programming model oClients: Create, use, release oServers: Do work ●Simple, extensible architecture oInterceptors
  • 12. COM+ Model Benefits ●The glue in Windows DNA oComponent Model + Services oLanguage agnostic oOnline & offline oCentralized & distributed oWeb & client-server
  • 13. COM+ Features ●Servers ●Transactions ●Security ●Administration ●Load Balancing ●Queued Components ●Events
  • 14. Problem: Server Programming is Difficult ●Difficult to write servers oThreading oConcurrency oProcess Management oN-Tier Complexity oDeployment
  • 15. COM+: Servers Made Easy ●Design components as a client application oSingle user, single thread, no process concern ●Write components in ANY language oVB, VJ, VC, Cobol, whatever ●Deploy as 1, 2, 3 or N-tier Application oDrag and drop simplicity
  • 16. Problem: Security Is Complicated ●Many different users sharing the same components ●Different users require different security solutions ●Distributed applications
  • 17. COM+: Role-based Security ●Role-based security ●Method-level security ●Context ‘flows’ the security information ●Abstracts security settings oEasier for the user
  • 18. Problem: Management is Difficult ●Managing hundreds or thousands of clients ●Managing tens or hundreds of servers ●Monitoring System Activity ●GUIs are too laborious for large systems
  • 19. COM+: Administration ●MMC Snap In - Easy to Use ●Scriptable Interfaces - Full function ●System events are logged for Measuring Monitoring and Metering
  • 20. Component Services ●Components can be decorated with attributes odeclarative oconfigurable
  • 21. Problem: Continue to Work When Servers are Unavailable Problem: Smooth the Demand of Your system ●Different components are needed for connected and disconnected versions of the same application ●Deployment of two applications is difficult ●No way to govern system load for consistent server performance ●Scale limitations
  • 22. COM+: Queued Components ●Based on unification of objects, transactions, and messaging oDeferred obj execution oAutomatic transactions ●Unifies connected / disconnected application design ●Increases scalability / availability
  • 23. Problem: Customers Want to Add machines to increase Performance ●Small servers are dropping down in prices ●Distribute system load across systems with no changes to the application (client OR server) ●Increase availability
  • 24. COM+: Load Balancing ●Transparent to clients ●Controlled via Admin oReplicated Automatically ●Simple routing oDesigned for extensibility ●Single router per application cluster oRouter can fail over via resource cluster
  • 25. Dynamic Load Balancing ●In addition to static load balancing or DNS round-robin, COM+ provides dynamic load balancing oUses response time algorithm oLoad balance on creation only ●Use to improve scalability, availability ●Most COM+ components are load-balanceable oBeware of machine affinities
  • 26. Object Pooling ●COM+ supports pooling ●Lets you build a homogeneous pool of objects oPer-process oObjects can not have thread-affinity oPool can be initialized in the background oPool sizes set administratively ●Use to govern the maximum number of objects created ●May be useful if construction costs are high oTest to see if you get a performance benefit
  • 27. Problem: Proprietary Event Services ●Enterprise applications need event services oNotify other components that something ‘interesting’ has happened ●Customers forced to design and implement their own solutions ●Integration with other application events becomes difficult
  • 28. COM+ Event Services ●Publish and subscribe model ●Late bound design ●Notifications sent by COM Publisher Event Database Subscriber Event Service Subscriber Subscriber Administration