我正在寻找有关如何构建可扩展 WCF 服务器(具有动态加载的服务)的建议,最好使用 System.Addins 或 MEF。
服务器应托管实现最小“插件”API(StartService/StopService/GetStatus?/etc)的任何 WCF 服务(包含在 DLL 程序集中,在运行时加载)。
这篇文章是一个好的开始。一些要讨论的目标和要点:
- 为每个服务使用/不使用隔离的 AppDomain?
- 如何配置每个服务(端点、传输协议)?XML-config 文件还是更好的选择?
- 程序集的延迟/延迟加载(当服务请求到达时)?可能的?有用?如何?
- 磁盘上的文件更改时重新加载程序集(对开发环境有用);
- 磁盘配置更改时服务重启;
当然,其他想法总是受欢迎的;)