1

我被赋予了系统架构和设计的艰巨任务。我很喜欢编程,而不是设计。所以,我决定在这里寻求一些关于如何/从哪里开始我的任务的建议。我试图在下图中提出所有正确的问题(我认为):

点击上面的链接查看大图

实际图像。

所以,我可以回答其中一个问题:“为什么选择 XML-RPC?” 因为,它是健壮的、设计良好的、行业标准的通信方式(我在 IEEE 论文中读到过)。

请回答图片中的任何问题。

PS我同意,要求轻松解决所有这些问题(图像中的最后一个问题)非常懒惰。但这不是一个人应该做的吗?不能解决曾经解决过的任何事情?

编辑:该应用程序必须基本上为远程用户提供一种与机器交互的方式。一种说法是,应用程序应该为机器交互 api 提供网络功能。

4

1 回答 1

1

感谢您的澄清。

我认为您需要对服务器(机器计算机)和客户端之间的通信方式进行更多研究。一种选择可能是使用 MSMQ(消息队列)的双向通信。微软在这里有一个关于它的页面http://msdn.microsoft.com/en-us/library/ms752264.aspx

这是我认为它可能工作的方式。每个部分都是您解决方案中的一个单独项目。

机器计算机(服务器)项目(exe,控制台应用程序?)

  • 包含一个 ServiceHost 以接受来自客户端计算机的 API 调用。
  • 当新的客户端计算机连接时,添加到要更新的客户端列表。
  • 当客户端断开连接时,从列表中删除客户端以进行更新(或在发送更新通信之前检查客户端是否已启动)。
  • 接受 API 调用,对所有客户端计算机进行回调以提供进程状态,并在“机器”上运行请求。
  • 当“机器”完成时,调用客户端计算机以提供完整状态。

客户端计算机(客户端)项目(exe、GUI 应用程序)

  • 包含一个接受来自服务器的状态更新的 ServiceHost。
  • 开始时,向服务器发送一个通知(API)新客户端在线。
  • 退出时,向服务器发送通知(API)客户端将离线。
  • 提供一个显示状态和任何其他可用读数或信息的窗口,这些信息将从服务器提供。
  • 提供选项以允许用户向服务器(API)发送命令,该服务器将在机器上运行

承包工程

  • 包含将从客户端和服务器来回传递的所有类对象。
  • 客户端和服务器项目都引用了这个项目。两者都需要能够使用这些类来发送或接收通信。
于 2012-09-07T15:59:03.073 回答