文档首页> 分布式消息服务RocketMQ版> 用户指南> 连接实例> 连接已开启SSL的RocketMQ实例(TCP协议)
更新时间:2024-03-15 GMT+08:00

连接已开启SSL的RocketMQ实例(TCP协议)

实例开启SSL时,数据使用加密传输,安全性更高。本文主要介绍在命令行模式下调用TCP协议连接已开启SSL的RocketMQ实例。

在使用SSL连接的场景下,通过内网访问和通过公网访问,仅涉及连接IP和端口不一致,其他操作步骤是一样的,内网访问的连接端口为8100,公网环境下访问的连接端口为8200。

文中仅介绍公网环境下的连接示例,在内网连接时,替换为相应的连接地址即可。

前提条件

  • 已创建RocketMQ实例,并记录实例详情中的“连接地址”(内网访问)/“公网连接地址”(公网访问)
  • 配置安全组
  • 创建Topic
  • 已创建弹性云服务器,如果使用内网访问RocketMQ实例,请设置弹性云服务器的VPC、子网、安全组与RocketMQ实例的VPC、子网、安全组保持一致。
  • 已安装Java Development Kit 1.8.111或以上版本,并完成环境变量配置。

命令行模式连接实例

  1. 下载“rocketmq-tutorial”示例软件包。

    wget https://dms-demo.obs.cn-north-1.myhuaweicloud.com/rocketmq-tutorial.zip

  2. 解压“rocketmq-tutorial”。

    unzip rocketmq-tutorial.zip

  3. 进入“rocketmq-tutorial/bin”目录。

    cd rocketmq-tutorial/bin

  4. 运行生产普通消息示例。

    JAVA_OPT=-Dtls.enable=true sh mqadmin sendMessage -n "${连接地址}" -t ${Topic名称} -p "hello rocketmq"

    参数说明如下:

    • 连接地址:表示RocketMQ实例的“连接地址”(内网访问)/“公网连接地址”(公网访问)。
    • Topic名称:RocketMQ实例下创建的Topic名称。

    示例如下,其中“100.xxx.xxx.89:8200;100.xxx.xxx.144:8200”为RocketMQ实例的元数据公网连接地址,“topic-test”为Topic名称。

    JAVA_OPT=-Dtls.enable=true sh mqadmin sendMessage -n "100.xxx.xxx.89:8200;100.xxx.xxx.144:8200" -t topic-test -p "hello rocketmq"

    使用Ctrl+C命令退出。

  5. 运行消费普通消息示例。

    JAVA_OPT=-Dtls.enable=true sh mqadmin consumeMessage -n "${连接地址}" -t ${Topic名称}

    参数说明如下:

    • 连接地址:表示RocketMQ实例的“连接地址”(内网访问)/“公网连接地址”(公网访问)。
    • Topic名称:RocketMQ实例下创建的Topic名称。

    示例如下,其中“100.xxx.xxx.89:8200;100.xxx.xxx.144:8200”为RocketMQ实例的元数据公网连接地址,“topic-test”为Topic名称。

    JAVA_OPT=-Dtls.enable=true sh mqadmin consumeMessage -n "100.xxx.xxx.89:8200;100.xxx.xxx.144:8200" -t topic-test

    如需停止消费使用Ctrl+C命令退出。

  6. 运行生产带消息轨迹的消息示例。

    JAVA_OPT=-Dtls.enable=true sh mqadmin sendMessage -n "${连接地址}" -t ${Topic名称} -p "hello rocketmq" -m true

    参数说明如下:

    • 连接地址:表示RocketMQ实例的“连接地址”(内网访问)/“公网连接地址”(公网访问)。
    • Topic名称:RocketMQ实例下创建的Topic名称。

    示例如下,其中“100.xxx.xxx.89:8200;100.xxx.xxx.144:8200”为RocketMQ实例的元数据公网连接地址,“topic-test”为Topic名称。

    JAVA_OPT=-Dtls.enable=true sh mqadmin sendMessage -n "100.xxx.xxx.89:8200;100.xxx.xxx.144:8200" -t topic-test -p "hello rocketmq" -m true

    使用Ctrl+C命令退出。

  7. 运行消费消息示例,并发送消息轨迹。

    JAVA_OPT=-Dtls.enable=true sh mqadmin consumeMessage -n "${连接地址}" -t ${Topic名称} -m true

    参数说明如下:

    • 连接地址:表示RocketMQ实例的“连接地址”(内网访问)/“公网连接地址”(公网访问)。
    • Topic名称:RocketMQ实例下创建的Topic名称。

    示例如下,其中“100.xxx.xxx.89:8200;100.xxx.xxx.144:8200”为RocketMQ实例的元数据公网连接地址,“topic-test”为Topic名称。

    JAVA_OPT=-Dtls.enable=true sh mqadmin consumeMessage -n "100.xxx.xxx.89:8200;100.xxx.xxx.144:8200" -t topic-test -m true

    使用Ctrl+C命令退出。