Existe-t-il des raisons de ne pas héberger un serveur COM dans une application COM +?

Le moyen le plus simple de transformer un serveur COM in-proc en serveur COM out-proc consiste à créer une application COM +. Quels sont les inconvénients possibles de le faire de cette façon?

Je ne peux vraiment pas penser à aucune raison de créer votre propre conteneur ou d’utiliser une tierce partie (le cas échéant) en faveur de MTS / COM +. Je veux dire qu’il fait toutes les choses que vous voulez:

  • Vous permet de choisir la dissortingbution des objects COM aux processus de conteneur.
  • Vous permet de configurer le compte sous lequel ils sont exécutés.
  • Surveille les processus du conteneur et redémarre si nécessaire et peut les recycler.
  • Vous pouvez même héberger des composants STA dans des scénarios où vous avez besoin de plusieurs threads traités en démarrant des processus de travail multiples. etc.

Il est difficile d’imaginer faire mieux que cela sans passer 6 mois ou plus.

En retournant la question, je suppose que votre anti-self pourrait se demander, “Pourquoi y a-t-il des options autres que le serveur COM + pour un serveur COM hors de proc? Quels avantages offrent ces autres options d’hébergement?”

Je n’ai rien préparé, mais j’imagine un tableau – avec des options d’hébergement dans le haut comme en-têtes dans diverses colonnes, et les atsortingbuts particuliers comme en-têtes dans les lignes. vous pouvez évaluer chaque option d’hébergement sur chaque zone ou atsortingbut différent.

La principale différence que je vois réside dans le modèle administratif et la capacité, ainsi que dans la flexibilité. Par exemple, l’hébergement d’un serveur COM dans un service Windows vous offre les fonctionnalités du service Windows: démarrage automatique avec démarrage du système d’exploitation; l’interface utilisateur d’administration associée à services.msc (à la fois les éléments administratifs / opérationnels) et la flexibilité d’append d’autres interfaces à ce service (flexibilité).