2011-01-26 214 views

回答

0

从体系结构上看,您听起来像有一个服务A需要启动工作流程,并且该工作流程恰好是控制台应用程序。在其他服务器上。如果是这样的话,我会创建一个与控制台应用程序位于同一台服务器上的服务B.并让服务A使用WCF对服务B进行排队调用。您不想直接调用,因为您不希望自己的服务阻止您的控制台应用程序的结果。

有很多好的跨服务排队呼叫的例子。请参阅“排队呼叫”here。如果服务A需要来自服务B的关于呼叫成功或失败的响应,则这是排队的呼叫以其他方式返回。

+0

通过ServiceB,你的意思是一个WCF的网络服务或Windows服务? – DotnetDude 2011-01-26 21:02:43

0

如果您位于Windows域中,则可以使用Sysinternal工具发出远程过程调用(RPC)。

的Sysinternals Suite:http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx

有些是有助于这个Sysinternal工具包括:

  • psexec.exe - 远程执行
  • pskill.exe - 终止远程过程
  • psservice.exe - 启动/停止远程服务 服务

如果你是一个Linux,我经常只需要安装OpenSSH,然后SSH到另一台机器上。 Linux有一个RPC方法,但我不熟悉它。

+0

我不建议手动发布RPC的... – 2011-01-26 22:44:09

相关问题