在Windows服务器上运行服务器应用程序和客户端应用程序

在Windows服务器上运行服务器应用程序和客户端应用程序

问题描述:

我有一个客户端 - 服务器应用程序,我是开发人员。通常,服务器应用程序在Windows PC上运行,而多个客户端应用程序实例在Windows PC上运行。客户端和服务器使用soap消息和UDP消息进行通信。服务器还使用UDP消息与
照明控制硬件通信。一些客户在同一台​​Windows PC上运行服务器应用程序和一个客户端应用程序实例。这些情况都可以正常工作。

我有一个客户端想要在虚拟Windows服务器而不是Windows桌面PC上运行服务器应用程序和客户端应用程序的一个实例。我已经在Amazon EC2 Windows服务器实例上进行了设置,但我无法在客户端和
服务器应用之间进行任何通信。我已经为Amazon EC2设置了安全组。

我已经在防火墙中为应用程序和协议设置了规则。

服务器显示为侦听TCP端口8899和UDP端口1040.我正在运行commview但在使用的端口上没有流量。似乎客户端应用程序被阻止了。我允许客户端和服务器应用程序通过防火墙,并在所有方向上启用所有
所需的端口。

即使关闭了防火墙,也没有通信。




I have a client-server app, I am the developer. Normally the server app runs on a Windows PC and multiple client app instances run on Windows PCs. The client and server communicate using soap messages and UDP messages. The server also communicates with lighting control hardware using UDP messages. Some customers run the server app and one instance of the client app on the same Windows PC. These situations all work fine.
I have a client that wants to run the server app and one instance of the client app on a virtual Windows Server instead of a Windows desktop PC. I've set it up on an Amazon EC2 Windows server instance, but I cannot get any communication between the client and server apps. I have set up the security groups for Amazon EC2.
I have set up rules in the firewall for the apps and the protocols.
The server is showing as listening on TCP port 8899 and UDP port 1040. I'm running commview but no traffic on the used ports. It seems that the client app is being blocked. I've allowed the client and server apps through the firewall as well as enabling all the needed ports in both directions.
Even with the firewall off there's no communication.


感谢您在此发帖。

对于这种情况,你可以从两个方向检测问题。

For the situation, you could detect the issue from two directions.

1。

我们需要确认已经从客户端应用程序发送了指定的数据,因为您可以调试当前的客户端应用程序以确认发送功能已成功执行。 您还可以使用wireshark工具
而不是服务器应用程序来接收数据。

we need to confirm that the specified data has been sent from the client application, for the situation you could debug the current client application to confirm the send function has been executed successfully.  You also can use the wireshark tool instead of the server application to receive data.

如果wireshark可以从发送的客户端应用程序中捕获数据,这证明客户端应用程序已成功发送数据。

If the wireshark can catch the data from client application sent, which prove that the client application has sent data successfully.

2。

请调试您的服务器应用程序,请确认服务器应用程序可以接收数据,并且接收功能已成功执行。

please debug your server application, please confirm that the server application can receive data, and the receive function has been performed successfully.

wireshark
是一个很好的网络工具,我希望该工具可以帮助您解决问题。

The wireshark is a good network tool, I hope that the tool can help you solve issue.

最好的问候,

Hart

如果您的问题已经解决,请记得关闭您的主题通过将有用的帖子标记为对同样问题的其他人有帮助的答案。

If your issue has been resolved, please remember to close your thread by marking useful posts as answer that can be helpful for other person with same issue.