EMQ Meetup2020 成都站回顾
据有关数据,四川省物联网相关规模已经超过 1200 亿,聚集企业超过 1100 家,已形成由核心区成都向周边多区域辐射的产业发展格局。目前,四川已初步形成涵盖各类场景的物联网全产业链,其中以车联网、智慧医疗、智慧物流等领域集中度最高。
作为专注物联网消息与流处理的开源软件企业,EMQ 也将 2020 年首场线下 Meetup 的地点选在了物联网产业飞速发展的成都。 8月29日,多位物联网领域应用开发者朋友相聚成都,与 EMQ 共同探讨交流了 IoT & 5G 的发展。
EMQ 公司创始人兼 CEO 李枫首先向到场观众介绍了 EMQ 团队于今年正式面向全球 IoT & 5G 应用发布的开源函数编程语言 Hamler。这是一门构建在 Erlang 虚拟机(VM)上的 Haskell 风格的强类型 (strongly-typed) 编程语言,独特地结合了编译时的类型检查推导,与对运行时高并发和软实时能力的支持。我们希望通过 Hamler 实现更强大的编译时类型系统与更友好的程序语法,帮助我们构建更可靠的软件系统和繁荣的开发者社区。
Hamler 编程语言将赋予行业,尤其是5G、IoT、云计算和边缘计算等潜力领域,构建下一代高可靠、可扩展、具备软实时支持应用的能力。 —— 李枫
除了具有开拓意义的开源编程语言,我们也没有停止对现有产品体系的完善。EMQ 产品经理李国伟为大家系统讲解了 EMQX 系列产品及其应用。
本期 Meetup 还邀请到了 EMQ 在成都的两个合作伙伴,四川旷谷信息工程有限公司(以下简称旷谷)和 G7。
旷谷是中铁二院工程集团有限责任公司的全资子公司。公司多年来在交通建设领域承担了多项有影响力的系统集成项目,涵盖铁路、地铁、高速公路和各种大型电子、通信、自动化工程的设计,以及企业信息化发展规划、实施和管理等各个方面。来自旷谷轨道交通物联网项目的技术负责人须啸海先生为到场的朋友分享了 EMQX Neuron 在轨道交通实时监控系统中的初步应用。
「云计算+边缘计算」的工业互联网是未来的趋势,应用当代工业互联网技术进行自主产品升级改造,营造良好的工业互联网应用生态圈已是必然。—— 须啸海
G7 是一家智慧物联网公司,总部位于北京,研发中心设在成都,业务覆盖全国及周边亚洲国家。G7 以智能终端为基础,用数据连接每一辆卡车、货主、运力主和司机,提升运输服务效率,让物流更经济、更高效、更安全、更环保。目前 G7 平台上服务客户数量超过5万家,连接车辆总数超过70万辆。
通过车载终端设备采集数据、通过大数据技术手段分析数据以及实现省市政府平台对车辆的监管与调度,是车联网的三个核心。G7 研发总监杨银波先生与大家分享了 G7 如何利用规则引擎实现事件计算、数据分发和事件驱动几大功能,来满足车联网业务需求。
基于规则引擎的数据分发系统可以实现业务解耦,极大缩短开发周期,统一的监控、统计、日志功能,也使服务质量得到极大提升。 —— 杨银波
精彩 Q&A
Q:EMQX 对 Topic 数量有限制吗?
A:没有限制,EMQX 的 Topic 对性能影响比较小,本身 Topic 的订阅发布就是一个 match 操作,性能不会有太大影响。
Q:EMQX 集群支持多少节点,有相关建议吗?
A:建议一个集群的节点数不要超过 5 个,因为集群中有部分数据是每个节点都要复制的,节点过大不便管理,性能会有损失。不必担心 5 个节点集群还不够大,正常情况下 5 个节点已经能够支撑数百万的设备连接了,如果超过千万设备,可以考虑分集群部署,做集群桥接。 总结来说集群的规模核心思想就是“大节点、小集群”,相同 CPU 核数,你可以选择 16 核 32GB x 3 而不是 8核16G x 6。我们会在 5.0 版本里面将 EMQX 的存储与计算分离,解决集群大小问题,届时可以支持 EMQX 超大规模集群以及集群的无缝伸缩。
Q:EMQX Neuron 是做什么的,交付软件还是硬件?主要支持 Modbus 吗?是否计划开源?我们也希望参与到项目贡献当中
A:Neuron 主要是做边缘工业协议接入,以软件形式交付。支持包括 Modbus、OPC UA 等数十种工业协议接入,并转换成 MQTT 协议接入云端工业物联网平台。相关产品详情我们即将在官网上线,后续敬请关注。 我们在评估开源计划,后续应该会开源框架,工业协议这一块不打算开源。EMQX Neuron 这个产品核心开发在这一领域有二十年的经验,每个工业协议对接起来都是很耗费精力的。如果开源可能也会比较慢,这一块需要整理的东西很多,硬件这一层有很多依赖库、兼容等工作要做。
Q:ACL 条数比较多的时候,EMQX 会不会有影响?
A:正常情况下是没有影响的。如果使用 MySQL 来做 ACL 的数据源,ACL 的效率与条数取决于查询 SQL 和 MySQL 服务器。 EMQX 的 ACL 有一定的缓存时间,不是每一个 Pub/Sub 都会去查询数据库的。同时也需要合理的设计 ACL,从客户使用反馈来看,大部分 ACL 可以使用通配符来处理,这能够有效缩减大小,具体使用可以参考官方文档。
Q:EMQX 服务器所需配置怎么计算?EMQX 这台服务器上可以装其他服务吗?
A:服务器配置取决于你的连接数、消息大小、消息频率。业务量比较小的时候可以装其他服务,不过还是建议单独一个服务器来运行 EMQX,避免业务波动、业务量大的时候互相影响。
作为一家开源软件企业,EMQ 一直相信分享与合作的力量,我们会在未来建立更多与用户沟通交流的渠道,倾听各位的声音。同时也欢迎关注我们的开源项目,和我们一起为物联网领域带来更多可能性。