RabbitMQ: 处理 Elixir 中 CLIENT ALERT: Fatal - Handshake Failure 错误

本文件是入门指南指南的一部分。您可以在这里查看完整指南:如何使用 Stackhero 连接 RabbitMQ

如果您在使用 Elixir 连接时看到如下错误信息:

CLIENT ALERT: Fatal - Handshake Failure

这通常是由于 AMQP 库对 TLS 1.3 支持存在 bug。一个可靠的解决方法是,在打开连接时强制使用 TLS 1.2,可通过如下方式实现:

AMQP.Connection.open("amqps://admin:<PASSWORD>@<XXXXXX>.stackhero-network.com:<AMQP_PORT_TLS>", :undefined, ssl_options: [ versions: [ :"tlsv1.2" ] ])