在过去的两天里,我阅读了关于 Indy和协议的每个StackOverflow
问题和答案(当然还有谷歌搜索) ,以便决定在我的用户应用程序和我的 Windows 服务之间的通信方法中应该使用哪一个。TCP
UDP
从我目前看到的情况来看,UDP
它是最简单也是唯一一个我设法从其接收广播消息的TidUDPClient
(我还没有测试回复)。而且我还注意到TCP
它的线程循环有点复杂。
但是,由于我被告知UDP
的所有地方都不可靠,UDP
不可靠......我开始怀疑TCP
无论如何使用它是不是更好。
我的用户应用程序将在许多机器上运行,服务将在其中一台机器上运行,IP
与客户共享一台,或者在专用机器上运行,具体取决于我客户的资金。那么,我真的应该担心UDP
数据丢失的可能性吗?
我需要广播功能,因此我的服务器会立即通知所有客户端有关应用程序更新的信息,当然,如果我的客户端应用程序不知道IP
服务/服务器在哪个位置,它将发送一个广播调用以告知服务器在哪里。这适用于TCP
吗?
我发送的消息是对用户访问确认、用户权限和应用程序可执行文件更新的请求,因为主应用程序无法自行更新。这些消息像下面这样加密,有时他们可能会赌得更大。
e86c6234bf117b97d6d4a0c5c317bbc75a3282dfd34b95446fc6e26d46239327f2f1db352b2f796e95dccd9f99403adf5eda7ba8