WCF与Windows服务主机和客户端托管

本文关键字:客户端 主机 Windows 服务 WCF | 更新日期: 2023-09-27 17:49:14

我有一个WCF与Windows服务托管的后台DB操作。我将客户端部分也包含在带有计时器的相同windows服务中,而不是为客户端部分创建单独的windows服务。我想知道这种方法有什么缺点。

WCF与Windows服务主机和客户端托管

不得不同意@Kek,如果没有外部调用者,为什么要有WCF服务:)除此之外,与使用2个windows服务相比,没有真正的缺点,你的方法使用更少的内存,只有一个服务要管理(启动,停止等)

我同意@Tommy Grovnes在大多数情况下的观点:如果事情做得正确,没有缺点。我想指出一些事情:

如果服务和客户端在同一个进程中,当然后者依赖于前者…你可能会想直接调用服务方法(实际上不使用WCF)…尽量不要那样做。

如果你这样做,你的数据不是序列化的:所以它更快,但它可能不完全相同的行为方式与另一个进程中的客户端相比。

如果您使用诸如EF Self跟踪实体之类的机制,则尤其如此。这些实体在反序列化时改变它们的状态。当您从另一个进程调用服务时,避免序列化可能会导致意想不到的错误。