【发布时间】:2014-12-08 20:31:14
【问题描述】:
由于遗留代码的性质,我们需要每个客户端一个 DCOM 服务器(服务器代码中有大量静态和全局数据)。
我们利用 Enterprise Services .NET 库来实现基本实现。
在我们能够正确修复它之前(这意味着几个月以上的工作),我们希望有一个可供 20 左右用户使用的可用系统,这意味着每个客户端一台服务器。
.NET、C# 和 DCOM 是否可以做到这一点?
编辑:(更多技术信息) 客户端是 IIS 托管进程中的线程\会话。我们有一个 web api,可以登录到我们的服务器获取一些数据并注销。
【问题讨论】:
-
在这种情况下,“每个客户端的 DCOM 服务器”是什么意思?你的帖子没有技术细节。通常对于任何客户端/服务器系统,单个服务器由多个客户端共享,而 DCOM 支持这种情况没有任何问题。
-
我希望每个客户端一台服务器 - 不知道如何使它更简单。缺少哪些技术细节?
-
到目前为止,最简单的方法是不使用企业服务库。只是一个作为进程内服务器运行的简单 DLL。因此,每个客户端自动只有一个服务器实例。
-
如果你投反对票 - 你能提供一个理由吗?
-
因此,对于 每个 传入的 Web api 调用,您想要创建一个托管您的 COM 对象的 new 进程,在该对象上调用一些方法从您的 web api 方法实现中,然后在 web api 方法将数据返回给调用者后让进程退出?对吗?