我使用 DataSnap(VCL 应用程序)在 Delphi XE 中编写了一个多层应用程序套件。
这将在我公司内部使用,主要用于替换过时的传真通信。
一切正常,但我遇到了一个不愉快的情况:服务器机器在路由器后面,所以它有一个内部网络 IP。我将(在路由器中)端口 211(DataSnap 默认)上的所有传入连接转发到服务器的内部 IP,并且大约十分之八的所有客户端连接到服务器没有任何问题。
问题是,在剩下的 2 次中,我遇到了各种连接错误(主要是连接超时)。当它这样做时,我必须关闭并重新打开服务器应用程序或(某些)客户端,然后它才能工作。
现在我还处于设计阶段,所以这只是一个麻烦,但是当我发布它时,我不想告诉所有人不要关闭应用程序(一旦它工作,它工作,没有更多问题) ,每次出现连接问题时关闭并重新打开应用程序。
我怎样才能消除这个问题?
我(仅)看过 NetCat 和 SoCat,但(对我而言)这种情况似乎有点过头了。还有其他方法可以解决这个问题吗?