智慧停车(十八) 微消息队列 MQTT使用

微消息队列 MQTT 版是阿里云推出的一款面向移动互联网以及物联网领域的轻量级消息中间件。简单的来说,可以使用它来实现设备端和云端的通讯。快速实现效果。

一 阿里云微消息队列 MQTT

分享个阿里云2000元代金劵,免费领取可以给你购买服务器节省一些资金

购买后会创建一个实例,实例信息如下:

接下来要创建topic和group。

1.创建topic

MQTT 协议支持多级 Topic,父级 Topic 需在控制台创建,子级 Topic 无需创建。选择 Topic 管理 > 创建 Topic ,在创建 Topic 对话框,输入 Topic 以及描述,单击确认,可以在 Topic 管理页面查看刚创建的 Topic。

2.创建group

订阅消息的时候要用到group,选择 Group 管理 > 创建 Group ID,在创建 Group ID 对话框,输入 Group ID,然后单击确认,就可以可以在 Group ID 列表中查看到刚创建的 Group ID。

3.通过Java收发消息

(1).pom.xml

<dependencies>
            <dependency>
                <groupId>commons-codec</groupId>
                <artifactId>commons-codec</artifactId>
                <version>1.10</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.paho</groupId>
                <artifactId>org.eclipse.paho.client.mqttv3</artifactId>
                <version>1.2.2</version>
            </dependency>
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpclient</artifactId>
                <version>4.5.2</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.48</version>
            </dependency>
            <dependency>
                <groupId>com.aliyun</groupId>
                <artifactId>aliyun-java-sdk-onsmqtt</artifactId>
                <version>1.0.3</version>
            </dependency>
            <dependency>
                <groupId>com.aliyun</groupId>
                <artifactId>aliyun-java-sdk-core</artifactId>
                <version>4.5.0</version>
            </dependency>
</dependencies>

(2).java代码

import java.util.concurrent.ExecutorService;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;
import org.eclipse.paho.client.mqttv3.MqttCallbackExtended;
import org.eclipse.paho.client.mqttv3.MqttClient;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;

public class MQ4IoTSendMessageToMQ4IoTUseSignatureMode {

    public static void main(String[] args) throws Exception {
        /**
         * MQ4IOT 实例 I
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
MQTT(Message Queuing Telemetry Transport)是一个轻量级的消息传输协议,它主要用于物联网和移动应用中的设备间通信。云消息队列(CMQ)是腾讯云提供的一种消息队列服务,支持MQTT协议。 下面是使用MQTT版云消息队列的教程: 1. 登录腾讯云控制台,进入CMQ服务页面。 2. 创建一个消息队列主题,选择MQTT作为协议类型,设置消息过期时间、消息最大长度等参数。 3. 开发MQTT客户端程序,连接到云消息队列主题。 4. 发布消息到云消息队列主题。 5. 订阅云消息队列主题,接收消息。 6. 处理接收到的消息。 下面是一个示例程序(使用Python语言): ```python import paho.mqtt.client as mqtt # 连接到云消息队列 def on_connect(client, userdata, flags, rc): print("Connected with result code " + str(rc)) client.subscribe("topic/test") # 接收到消息 def on_message(client, userdata, msg): print(msg.topic + " " + str(msg.payload)) # 发布消息 client = mqtt.Client() client.connect("localhost", 1883, 60) client.publish("topic/test", "Hello, world!") # 订阅消息 client.on_connect = on_connect client.on_message = on_message client.loop_forever() ``` 在这个示例程序中,我们使用了paho-mqtt库来开发MQTT客户端程序。首先,我们连接到云消息队列主题,并订阅了一个名为“topic/test”的主题。然后,我们发布了一条消息到这个主题。最后,我们使用循环来接收和处理接收到的消息。 注意,在实际使用中,你需要将连接参数和主题名称替换为你自己的。另外,你还需要在腾讯云控制台中设置ACL(访问控制列表)来限制客户端的访问权限。 希望这个教程对你有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值