【发布时间】:2012-08-09 08:39:21
【问题描述】:
我有一个 .NET 类库,我需要将其加载到一个单独的域并从中执行一些代码。现在我正在使用 AppDomain.CreateInstanceFrom 来创建一个远程对象并使用一些接口解包它。但我有什么选择?远程处理是一种过时的技术。
【问题讨论】:
标签: .net reflection remoting appdomain
我有一个 .NET 类库,我需要将其加载到一个单独的域并从中执行一些代码。现在我正在使用 AppDomain.CreateInstanceFrom 来创建一个远程对象并使用一些接口解包它。但我有什么选择?远程处理是一种过时的技术。
【问题讨论】:
标签: .net reflection remoting appdomain
Remoting 对于跨 AppDomain 来说很好,但另一种方法是假装它们是同一台机器或不同机器上的不同进程。
例如,您可以在两者之间使用基本的套接字服务器,或者在命名管道(或类似)上运行的 WCF 或服务堆栈之类的东西。或已知位置的平面文件并轮询。或将数据库表作为队列。或者一个专用的消息栈——从 MSMQ 到 redis pub/sub 的任何东西。或者一个 http 服务器(HttpListener 也许)和客户端(WebClient 也许)。去狂野吧。
不过,就个人而言,如果它有效,我会很想坚持使用远程处理。请注意,我只在应用程序域之间这样说,按照您帖子中的方式 - 我个人不会在进程/机器之间使用远程处理。
【讨论】: