更新时间:2023-05-05 GMT+08:00

连接未开启SSL的RocketMQ实例

本文主要介绍在命令行模式下不使用SSL连接RocketMQ实例的操作,其中包含内网和公网环境下两种连接场景。

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

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

前提条件

  • 已创建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. 运行生产普通消息示例。

    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名称。

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

    使用Ctrl+C命令退出。

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

    sh mqadmin consumeMessage -n "${连接地址}" -t ${Topic名称}

    参数说明如下:

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

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

    sh mqadmin consumeMessage -n "100.xxx.xxx.89:8200;100.xxx.xxx.144:8200" -t topic-test

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

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

    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名称。

    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. 运行消费消息示例,并发送消息轨迹。

    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名称。

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

    使用Ctrl+C命令退出。