2.5. 配置 TCP 连接
AMQ Broker 使用 Netty 提供基本的、未加密的、基于 TCP 的连接,这些连接可以配置为使用阻止 Java IO 或较新的、非阻塞的 Java NIO。对于与许多并发连接具有更好的可扩展性,首选 Java NIO。但是,当您担心支持数以千计的并发连接时,使用旧的 IO 有时会为您提供比 NIO 更好的延迟。
如果您在不可信网络中运行连接,您应该注意 TCP 网络连接是未加密的。如果安全是优先级,您可能需要考虑使用 SSL 或 HTTPS 配置来加密通过此连接发送的消息。详情请查看 第 5.1 节 “保护连接”。
使用 TCP 连接时,所有连接都由客户端启动。代理不会启动到客户端的任何连接。这适用于用于强制从一个方向启动连接的防火墙策略。
对于 TCP 连接,连接器 URI 的主机和端口定义用于连接的地址。
以下示例演示了如何配置 TCP 连接。
先决条件
您应该熟悉配置接收器和连接器。如需更多信息,请参阅:
流程
-
打开 &
lt;broker_instance_dir> /etc/broker.xml
配置文件。 添加一个新的 acceptor 或修改现有接收器。在连接 URI 中,指定
tcp
作为协议。包括 IP 地址或主机名以及代理上的端口。例如:<acceptors> <acceptor name="tcp-acceptor">tcp://10.10.10.1:61617</acceptor> ... </acceptors>
<acceptors> <acceptor name="tcp-acceptor">tcp://10.10.10.1:61617</acceptor> ... </acceptors>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 根据前面的示例,代理接受从连接到 IP 地址
10.10.10.1
的端口61617
的客户端的 TCP 通信。(可选)您可以采用类似的方式配置连接器。例如:
<connectors> <connector name="tcp-connector">tcp://10.10.10.2:61617</connector> ... </connectors>
<connectors> <connector name="tcp-connector">tcp://10.10.10.2:61617</connector> ... </connectors>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 当进行到指定的 IP 和端口
10.10.10.2:61617
时,上例中的连接器由客户端(甚至代理本身)引用。
其他资源
- 有关 TCP 连接的可用配置选项的详情,请参考 附录 A, acceptor 和 Connector 配置参数。