TDengine赏金编程挑战赛开启:寻找最会玩MQTT的人

物联网通信是物联网的一个核心内容,目前物联网的通信协议并没有一个统一的标准,比较常见的有 MQTT、CoAP、DDS、XMPP 等,在这其中,MQTT(消息队列遥测传输协议)应该是应用最广泛的标准之一。其主要提供了订阅/发布两种消息模式,非常简约、轻量,易于使用,特别适合于受限环境(带宽低、网络延迟高、网络通信不稳定)的消息分发。

发展到今天,MQTT Broker 也已经有了诸多实现,包括 EMQ X、HiveMQ、Mosquito 等等。物联网数据采集涉及大量设备接入和海量的时序数据传输,这些 MQTT Broker 能够与 TDengine 完美组合,应对物联网场景中的海量时序数据的传输、存储和计算。

前段时间,在EMQ X 研发团队和 TDengine 研发团队的共同努力下,我们已经实现了EMQ X 通过规则引擎将设备消息存储到 TDengine 中(点击这里,阅读详细内容)。在双方开源社区都获得了积极的反馈。

TDengine 社区也有不少伙伴都在问,是否支持从其他 MQTT Broker 存数据到 TDengine 中。鉴于 TDengine 是开源且包容的,我们打算,让这个问题,从社区中来,到社区中去。未来我们将举办一系列 MQTT 挑战赛,第一期就从 HiveMQ 开始。本期挑战最终要向开源社区小伙伴交付一个 HiveMQ extension:使 HiveMQ 使用 TDengine 存储收到的数据。

TDengine赏金编程挑战赛开启:寻找最会玩MQTT的人_第1张图片

当然,奖金也是非常丰厚的,我们不是标题党,只要你的程序符合我们的接收标准,TDengine官方奖励一万元人民币,并且邀请你加入 TDengine Contributor 俱乐部。

你需要做到什么?

开发要求

  1. 支持 TDengine 2.0 RESTful API 和 JDBC API 进行数据存储

  2. 支持 HiveMQ v4,遵守 HiveMQ extension 开发规范,详见:
    https://www.hivemq.com/docs/hivemq/4.3/extensions/introduction.html

  3. 符合HiveMQ 的 extension 测试要求,并提供测试报告。详见:
    https://www.hivemq.com/docs/hivemq/4.3/extensions/testing-extension.html

  4. 长时间运行无内存泄漏。

  5. 支持 Docker 部署环境

其他要求

  1. 提供完整的文档,描述代码逻辑架构、编译步骤和 TDengine / HiveMQ 共同部署方法。

  2. 代码需要以 Apache 或 MIT 或 BSD License 之一开源。

如何验证你的工作?

验证方法

  1. 使用 HiveMQ Community Edition 的 Docker 镜像部署 HiveMQ MQTT broker:

  2. 使用 TDengine 2.0 社区版进行数据落盘存储:

  3. 使用开源软件 MQTTLoader 进行 MQTT 多客户端消息发送压力测试(为便于测试,使用本机或者局域网环境进行压力测试):

如何提交你的作品?

交付要求

  1. 按照上述开发要求实现的HiveMQ extension;

  2. 按照上述其他要求编写的完整且详尽的文档。

提交方式

开发者需在竞赛期限内提供 extension 源代码和文档(MarkDown格式),提交 Pull Request 到 TDengine 在 GitHub 的 Repo。

你将获得什么?

优胜奖

  1. 优胜者获得现金奖励 10,000 元 RMB(税前);

  2. 成为 TDengine Contributor 俱乐部成员,受邀参与 TDengine 线上、线下社区活动。

*优胜者:以代码被TDengine接收为准,评选出一名。

积极参与奖

所有参加竞赛并提交作品者均会获得 TDengine 纪念礼品一件。

重要时间节点

竞赛起始时间:9月 8 日

作品提交截止时间:10 月 7 日

作品评选时间:10 月 8 日~ 10月 22 日

你可能感兴趣的:(挑战赛,数据库,涛思数据,tdengine,物联网,大数据)