如何从不同的计算机运行TCP套接字应用程序

本文关键字:运行 TCP 套接字 应用程序 计算机 | 更新日期: 2023-09-27 18:02:07

如果有人能帮忙我将不胜感激。

我写了一个Client/Server Sockets应用程序。客户端为Windows Forms C#应用程序,服务器端为C# console应用程序,在本地运行。客户机应用程序有一个登录表单,其中包含带有生成端口的字段。

当用户登录时,他正使用该端口连接到服务器,服务器继续侦听传入的连接。

当我测试我的应用程序时,一切都很好,只是在一台PC上运行几个Visual Studio项目的实例。现在,我想在几台电脑上测试一下,这里我很困惑。如果有人能简单地解释一下如何在两台机器上运行我的应用程序,我将不胜感激。

两个用户如何连接到同一台服务器?它应该位于哪里?服务器是否应该为每个用户组提供一个IP和不同的端口?

另外,我的应用程序使用SQL Server数据库,该数据库安装在一台PC上。应用程序使用那个PC名的连接字符串。在两台PC的情况下,是否可以将第二台计算机连接到第一台PC上的DB ?

如果这听起来很傻,我很抱歉:)

Thanks to lot

如何从不同的计算机运行TCP套接字应用程序

所以如果我是正确的,你想知道以下三件事?

Q1。如何在多机环境中测试软件

A:这可能不是一个真正的Stackoverflow问题,但在这种情况下,我要做的是在Hyper-V中设置一个小的设置,其中有几台使用不同操作系统的机器,这些机器都有一个共享文件夹,我可以将我的代码部署到这个文件夹中。当然,对于更广泛的测试,您需要获得更多的机器,并将可执行文件复制到该机器上以进行第一阶段的测试,并且可能为第二阶段的测试编写安装软件,但这取决于您实际进行的测试数量。

Q2。如何允许多个用户连接到我的服务?

A:我认为Anthony Horne在评论中对此有一个很好的答案-告诉你的服务监听端口X,当客户端试图连接时,在端口Y上打开一个新的通信实例,并要求客户端回叫到该端口。据我所知,这是解决这类问题的行业标准。

第三季。我的应用程序使用SQL Server数据库,我可以允许客户端远程连接到它吗?

A:是的,你可以。