0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

2022 开源之夏|EMQ 三大开源项目开发圆满收官

科技数码 来源:科技数码 作者:科技数码 2022-11-23 16:02 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今年暑假,EMQ 携手开源之夏,与高校学生开展了一场精彩纷呈的开源之旅。开源之夏(OSPP)是由中科院软件所「开源软件供应链点亮计划」发起的、面向高校学生的暑期开源活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展,培养和发掘更多优秀的开发者

开源软件的协作开发模式,是当今软件领域开展的极为成功的大规模协作实践。近年来,我国高校、科研机构与企业在开源领域不断探索前进,将开源精神薪火相传,把一个个开源项目推向更好的未来。

EMQ 带着对开源的热忱与初心,携旗下 EMQX、MQTT X、LF Edge eKuiper 三大开源项目首秀开源之夏,吸引了不少对前端、SQL 语法、流式计算等领域感兴趣的学生。从项目选择、撰写项目申请书,到在核心研发工程师的指导下开展项目开发贡献代码,整个过程中每个参与者都收获满满。历经三个月的项目开发和一个月的 PR 合并期,中选并参与 EMQ 开源项目的学生均顺利通过结项审核。在此,我们恭喜陈俊羽、雷佳祥和葛玉菲三位同学,也感谢各位用心敲下的每一串代码,与 EMQ 共同为开源物联网基础设施软件建设贡献力量。

EMQX 旗下项目|MQTT-SN 客户端实现

申请者:陈俊羽 南方科技大学电子科学与技术专业

项目描述:EMQX 是 EMQ 旗下的开源大规模分布式物联网 MQTT 消息服务器,需要基于 Erlang 语言来实现一个 MQTT-SN v1.2 客户端,来完善 EMQX 对 MQTT-SN 网关的功能测试和应用。目前 Github 上主要的 MQTT-SN 客户端均为 C 或 C++ 语言版本,难以直接原生嵌入 Erlang 语言的 MQTT-SN 网关中,本项工作的完成,也能够填补开源社区的这一空白。

结项报告:

项目完成度:实现了 MQTT-SN 数据包的序列化和反序列化处理,实现了使用状态机对协议交互逻辑的处理,实现了 MQTT-SN 客户端的单元测试与集成测试。

代码贡献量:改动 21 个文件,新增 3828 行。

学习心得:

非常开心能再次投入到开源之夏的活动,在导师的帮助下,顺利完成整个项目的开发,我感到非常幸运。

我选择这个项目的初衷是,在我学习了 Erlang 和 Elixir 语言的语法和基础知识之后,希望能有一个系统性的项目,能够让我进行函数式编程语言的实际应用,通过不同语言之间的对比,加深对于编程语言设计和操作系统的了解。

当了解到 EMQ 社区主要使用的语言,是比较特别的 Erlang、Rust 和 Haskell 时,我就对这个社区有了较大的好感,包括后面和导师对接时,其专业水平令我非常认可。在编程上我有一定的基础,加上曾参与过两届开源之夏,我尽可能优先自己解决问题,但也有对于函数式编程和 MQTT-SN 协议不甚了解的地方,比如关于 Erlang 特有的 Actor 模型和使用的 mock 框架,每次当我询问导师时,都非常热情地帮我解答,也都马上能够迅速解决我的问题。

除了对项目的实现以外,我还尝试将某些较新的理念应用在项目中,比如,之前我已经了解到 Github Action 可以实现基于 CI/CD 的自动化检查测试,但这次在项目实施的过程中,我需要实现 HTML 格式文档的部署时,了解到 Action 同样可以实现对于项目主页的自动化部署,从而实现了文档随项目的自托管。也正是开源之夏这样一个开放性的活动,能够让我逐步探索各种新的技术和最佳实践。

项目成果:

1、完成 MQTT-SN 客户端实现,并提供了命令行的发布/订阅的接口

poYBAGN906OAFYlUAAGixLsdHGM540.png

2、完成核心功能的单元测试、与 EMQX MQTT-SN 网关的集成测试。本项目的覆盖率达到 65%。

pYYBAGN906OAXHQyAADUqVipbQM782.png

3、完成并发布了对外的接口文档

poYBAGN906OAQ01KAAEj94VGo-0631.png

MQTT X 旗下项目|Electron 桌面客户端软件的自动更新

申请者:雷佳祥 太原科技大学计算机科学与技术学院-智能科学与技术

项目描述:MQTT X 是 EMQ 旗下的一个强大的跨平台 MQTT 5.0 桌面和 CLI 客户端。目前已经支持并提供了完整的 MQTT 协议的功能测试能力,需要一些针对前端和网络功能方面的优化,使其更加完整易用。本项目将为 MQTT X 添加一些可自动更新版本的功能,程序内更新后显示新版本的发布日志等的功能,用户可以减少一些手动操作来更快体验和使用到后续新版本的功能,从而提升整体的软件使用体验。

结项报告:

项目完成度:根据项目的产出要求(实现自动化更新与弹出更新日志),已全部完成并上线。

代码贡献量:贡献代码量为 200 行左右,已发布到新版本。

学习心得:

很庆幸此次暑假能发现并参加开源之夏这么有意义的活动,整个活动技术氛围十分浓厚,同学们在参与竞选的时候也表现得十分积极。开源在我看来是一个十分有意义的事,在此之前我不太理解开源,也没有接触过开源,感谢这次活动能让我步入开源的大门。

技术上的提升:

·极大开拓了前端开发的视野,在做这个项目之前,我还只认为前端可能就是开发网站、APP、微信小程序的工程师,做完这个项目后,我发现前端还可以帮助 PC 端应用实现诸如自动化更新等强大的功能,只要是做优化、处理用户交互方面的功能都是前端的开发范围。

·更加了解了 Electron、Typescript 等技术,对跨平台开发有更多的了解。

·熟悉了基本的 git 操作与 GitHub 的提交 PR 的流程,以前不明白 git 的用处,现在极大熟练了 git 与GitHub 的使用。

综合能力的提升:

·遇到困难时,多了很多从容,善于使用搜索来了解 bug 并解决 bug。

·从学生思维转变为工程师思维,即:遇到自己不会的技术时,可以以解决问题为目的,去学习新的技术,这样效率会非常的高。

·开发时会频繁的与导师沟通,需要表达清楚问题所在,所以在开发的过程中也极大的提升了我的沟通能力。

项目成果:

自动化更新功能上线后已经下载目标版本的安装包,完成了各种场景下的更新测试。

pYYBAGN906SAPjBdAAGm2rs7P20927.png

poYBAGN906SAC78eAAEF7CfUReM549.png

LF Edge eKuiper 旗下项目|流式计算窗口函数优化探索

申请者:葛玉菲 西安邮电大学软件工程专业

项目描述:LF Edge eKuiper 是由 EMQ 发起的 Go 语言实现的轻量级物联网边缘分析、流式处理开源软件项目,现已捐赠给 LF Edge基金会。窗口函数是流式计算的核心概念之一,也是开源边缘流式计算引擎 eKuiper 常用的功能之一。eKuiper 实现了几种常见的时间窗口和计数窗口,但是目前对于较长时间的窗口的优化仍较为欠缺。流式计算窗口的使用场景多种多样,业界和学术界已有较多的研究和优化方案。本项目的目标是实现并设计 WASM 扩展框架,方便用户使用 WASM 函数扩展 eKuiper 的处理能力。完成项目可以帮助开发者更深入地理解流式计算、大数据领域和数据库 SQL 引擎等方面的通用知识并应用于今后的工作学习中。

结项报告:

项目完成度:已按照原定方案实施项目,并积极完成了提高部分的课题。

代码贡献量:改动 26 个文件,新增 1355 行,删除 4 行。

学习心得:

很高兴能够参加暑期开源活动,整个活动参与下来,我从中学到了很多,不但了解到了很多开源社区,更是可以在一个社区深造,完成项目。开源在我看来是非常有意义的,不但可以开阔眼界,而且每个人都有可能为开源社区做出贡献,并在与开源同好们交流的过程中获得很大的提升。此外,想要上手某一项技术时,尽量查询社区官方文档,这是了解学习最好的途径。

技术上的提升:

·了解并学习了一门新技术 Webassembly,通过咨询社区导师和查阅社区文档学会这项技术的使用,学会如何运用到我的开源项目中。

·熟练了代码的调试。调试也可以让我们很方便的了解代码的运行堆栈与过程。

·学会如何上手了解一个社区的项目,熟悉了基本的 git 操作与 Github 提交 PR 的流程。

项目成果:

成功将 WASM 引入 ekuiper 插件机制,使其可以在流式 SQL 中调用 WASM 形式的函数。

pYYBAGN906WAHVblAAZiL6yTVxM165.png

后记

感谢各位导师和学生对开源项目开发的奉献,希望有意深耕开源物联网数据基础设施软件领域的学生们持续精进技术能力,永葆对开源的热爱。EMQ 期待在不久的将来与各位新生力量共同打造高性能、高可用、高安全的世界级开源软件产品,服务人类未来产业与社会。

审核编辑黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源
    +关注

    关注

    3

    文章

    4031

    浏览量

    45559
  • EMQX
    +关注

    关注

    0

    文章

    8

    浏览量

    452
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    开源鸿蒙城市技术沙龙上海站圆满落幕

    11月25日,由开源鸿蒙项目管理委员会(PMC)与合规SIG联合主办、模速空间科创金融综合服务平台承办的“开源鸿蒙城市技术沙龙·上海站”暨“开源鸿蒙合规SIG年度 Meetup”在上海
    的头像 发表于 12-03 17:36 862次阅读

    开源鸿蒙项目顺利孵化毕业

    2025年11月21日,2025开放原子开发者大会在北京隆重启幕。作为本次大会的重磅环节和核心焦点之一,在大会开幕式上,开放原子开源基金会(以下简称“基金会”)宣布开源鸿蒙项目达成
    的头像 发表于 11-27 14:36 293次阅读

    开源鸿蒙项目达成开源孵化目标顺利毕业

    11月21日,2025开放原子开发者大会在北京隆重启幕。作为本次大会的重磅环节和核心焦点之一,在大会开幕式上,开源鸿蒙项目达成开源孵化目标、顺利毕业,这是
    的头像 发表于 11-25 17:36 875次阅读

    开源鸿蒙和开源欧拉成为开放原子开源基金会首批毕业项目

    11月21日,在2025开放原子开发者大会开幕式上,开放原子开源基金会宣布旗下开源鸿蒙(OpenHarmony)与开源欧拉(openEuler)成为首批毕业
    的头像 发表于 11-25 17:22 553次阅读

    RT-Thread荣膺开放原子开源先锋项目,社区开发者斩获“开源贡献之星”|新闻速递

    近日,2025开放原子开发者大会在京开幕。大会举行了“中国开源创新力量致谢仪式”,向操作系统、数据库、人工智能大技术领域28个开源先锋项目
    的头像 发表于 11-24 18:48 192次阅读
    RT-Thread荣膺开放原子<b class='flag-5'>开源</b>先锋<b class='flag-5'>项目</b>,社区<b class='flag-5'>开发</b>者斩获“<b class='flag-5'>开源</b>贡献之星”|新闻速递

    开源鸿蒙技术大会2025丨技术俱乐部与开发者社团分论坛圆满举办

    2025年9月27日,开源鸿蒙技术大会2025“技术俱乐部&开发者社团分论坛”在湖南长沙国际会议中心圆满举行。本次分论坛聚焦“开源鸿蒙高校生态与人才培养”,主题涵盖人才培养、技术创新、
    的头像 发表于 11-10 18:21 1148次阅读
    <b class='flag-5'>开源</b>鸿蒙技术大会2025丨技术俱乐部与<b class='flag-5'>开发</b>者社团分论坛<b class='flag-5'>圆满</b>举办

    开源鸿蒙RISC-V SIG线下技术融合交流会圆满

    2025年10月22日,开源鸿蒙城市技术沙龙·北京站在中国科学院软件研究所成功举行。本次技术交流会由开源鸿蒙项目管理委员会(PMC)与开源鸿蒙RISC-V SIG联合主办,邀请了北京邮
    的头像 发表于 10-31 09:07 463次阅读

    开源鸿蒙硬件生态分论坛圆满举办

    近日,开源鸿蒙开发者大会2025(OHDC.2025)硬件生态分论坛在深圳圆满举办。本次论坛主题为“开源鸿蒙硬件新生态”,特邀行业技术领袖、专家、
    的头像 发表于 06-05 15:35 837次阅读

    开源鸿蒙工程工具分论坛圆满举办

    近日,开源鸿蒙开发者大会2025(OHDC.2025)工程工具分论坛在深圳圆满举办。本次分论坛由开源鸿蒙IDE SIG组长、华为终端BG工程工具技术专家唐春担任出品人,主题为“
    的头像 发表于 06-05 15:35 808次阅读

    2025开源鸿蒙开发者大会圆满落幕

    近日,开源鸿蒙开发者大会2025(OHDC.2025,简称“大会”)在深圳隆重开幕。大会正式发布了开源鸿蒙5.1 Release版本,举行了开源鸿蒙应用技术组件共建启动、
    的头像 发表于 05-26 17:03 1121次阅读

    这个夏天,用代码定义你的硬核实力!RT-Thread开源重磅来袭

    还在为简历项目发愁?想和业界大牛零距离交流?渴望让自己的代码跑在千万级设备上?今年,RT-Thread再次加入开源,带来了四个有趣又有挑战的项目
    的头像 发表于 05-23 16:06 648次阅读
    这个夏天,用代码定义你的硬核实力!RT-Thread<b class='flag-5'>开源</b><b class='flag-5'>之</b><b class='flag-5'>夏</b>重磅来袭

    圆满丨广饶轮胎展,期待再相逢

    (广饶)国际橡胶轮胎暨汽车配件展览会在广饶国际博览中心盛大启幕。经过天的展览展示与讨论交流,天津神悦电子科技有限公司圆满!本次展会,天津神悦针对轮胎制造设备,为客户
    的头像 发表于 05-19 15:29 632次阅读
    <b class='flag-5'>圆满</b><b class='flag-5'>收</b><b class='flag-5'>官</b>丨广饶轮胎展,期待再相逢

    RT-Thread荣登2024开源创新榜单,跻身中国十大开源社区

    日前,由中国科协科学技术传播中心、中国计算机学会、中国通信学会和中国科学院软件研究所联合主办,CSDN承办的2024年开源创新榜评选活动圆满落幕。在众多优秀候选者中,RT-Thread开源社区因其在
    的头像 发表于 01-08 19:06 1106次阅读
    RT-Thread荣登2024<b class='flag-5'>开源</b>创新榜单,跻身中国十<b class='flag-5'>大开源</b>社区

    开源鸿蒙荣获开放原子“2024年度操作系统领域国内活跃开源项目

    近日,2024开放原子开发者大会暨首届开源技术学术大会在武汉圆满召开。在大会开幕式“2024年度国内活跃开源项目&
    的头像 发表于 12-28 15:39 1421次阅读

    开放原子开源基金会与开源项目举行捐赠签约仪式

    近日,在2024开放原子开发者大会暨首届开源技术学术大会开幕式上,开放原子开源基金会秘书长助理李博与openKylin、EasyAda、KWDB开源
    的头像 发表于 12-23 11:29 992次阅读