2012-11-04 71 views
0

我们有我们自己的小型应用服务器,它们只是exe文件。这些应用服务器运行在各种机器上,我需要一种机制来启动/结束应用服务器而不用去到运行应用程序服务器的每台PC。我需要的是:需要调用/关闭在其他PC上运行的程序

  1. 我将安装在那里的应用服务器运行的每个PC的客户端应用程序,将有可用于监控各种PC上运行的应用程序服务器的服务器应用程序。

  2. 在客户端,我们可以描述各种应用程序服务器(只是exe文件)的位置及其友好名称。 (如c:\ app1.exe,Myapp; d:\ Myotherapp,OtherApp)。

  3. 在服务器上,当输入IP地址或主机名时,它会向客户端发送一个请求,该请求将回复它所能够运行的应用服务器(MyApp,OtherApp),并且它将在最初将它们的状态报告为已停止。当服务器上的开始按钮被按下以用于特定的应用服务器时,它将向客户端发送消息以启动精确的应用服务器。运行在客户端上的应用服务器的状态将定期刷新(通过交换上述消息)

  4. 如果某个其他服务器启动并指向同一客户端,它将报告在客户端上运行了2个应用程序服务器,并且其中一个服务器已启动。当按下停止按钮时,它将在客户端发送消息来停止特定的应用程序服务器。

我最初以为使用这种技术的:

  1. 当服务器需要任何特定的PC启动其应用服务器,它只是在数据库中一个表项。

  2. 客户端定期嗅探表,当它看到一个条目被创建时,它将启动该程序。

但是这种技术很差,因为它使用轮询,客户端将继续询问数据库。我想要一种推送信息。

套接字编程是否解决了这个任务或者有没有简单的方法?

+0

会像这样的工作杀死任务? http://www.watchingthenet.com/how-to-view-and-kill-processes-on-remote-windows-computers.html或这些http://www.technospot.net/blogs/how-to-start -and-端上处理一个远程计算机/ – kenny

回答

1

您可以试试nvents。我相信它有你正在寻找的东西。这将允许您在TCP端口上使用WCF仅通过网络订阅事件,而不必持续轮询数据库。

相关问题