Je cherche des suggestions sur la façon dont je peux construire un serveur WCF extensible (avec des services chargés dynamiquement), de préférence en utilisant System.Addins ou MEF.Des idées pour un hôte de service WCF extensible (addins/plugins)?
Le serveur doit héberger n'importe quel service WCF (contenu dans les assemblys DLL, chargé en exécution) qui implémente une API "plugin" minimale (StartService/StopService/GetStatus?/Etc).
This post est un bon début. Quelques objectifs et points à discuter:
- Utilisez/n'utilisez pas un AppDomain isolé pour chaque service?
- Comment configurer chaque service (points de terminaison, protocoles de transport)? Fichier XML-config ou une meilleure alternative?
- Chargement différé/paresseux des assemblages (lorsqu'une demande de service arrive)? Possible? Utile? Comment?
- Rechargement de l'assemblage lorsque le fichier est modifié sur le disque (utile pour l'environnement de développement);
- Redémarrage du service lorsque la configuration sur le disque change;
et, bien sûr, d'autres idées sont toujours les bienvenus;)