我想知道是否可以在服务器之间使用TCP协议创建套接字连接。
例如:我有两个服务器,一个是API,另一个是服务,因此API调用服务,如果不在同一台机器上,我怎么能发送消息?
我使用ZeroMQ,我肯定需要这种分离。
其他进口产品是安全的。 TCP套接字连接是否安全?
感谢。
答案 0 :(得分:2)
绝对可能,并且是互联网的基础。您计算机上的浏览器会永久打开远程服务器的套接字。
有很多方法可以锁定TCP连接:跨越网络级别,操作系统级别或应用程序级别。
如果您需要加密正在发送的数据TLS / SSL是事实上的方式,如果您的服务器位于您自己的私有子网上而无法访问外部,则通常会使用未加密的通信。
我从未使用ZeroMQ,但如果您将其用作服务中的中央存储或消息总线,则可以将其绑定到网络上具有相应可见性的接口,然后从任何接口连接到它你的服务器。
由于它是100%可能的,我觉得谎言问题变成了:
你应该如何公开他们的外部接口?,你应该在哪个抽象级别公开你的服务器?即
我强烈推荐您决定采取的任何课程,您非常谨慎地审核安全性,并确保没有任何东西暴露给不应该的外部世界。
答案 1 :(得分:0)
您可以使用Redis来实现此目的。如果两个服务器(一个是API,另一个称为服务)必须通信而不是API调用(客户端)。然后Redis pub/sub是个好建议。
如果他们不在同一台服务器 是它可以在机器内或远程进行通信。取决于您如何配置它。
TCP安全套接字 是的,它可以配置为使用SSL,请参阅Redis Encryption。
这是关于如何通过redis进行通信的重要主题。见Real time communication over redis