打印
[应用相关]

【转】开源架构XClouds私有云专题 | 如何抉择一个高并发的M...

[复制链接]
2960|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
https://mp.weixin.qq.com/s/DH0AtYa409I_BWsOoPgTyg


1前言

去年的一篇技术文章让不少朋友前来问道:你这个物联网架构如何开发的呀?一个人搞了多久?有没有专题学习下呀?现在,我开始慢慢整理这样的笔记,并分享给大家,共勉!


《我回来了 | 深度开源一个自研的物联网架构》

很多时候在想,技术到了一定的层面,该如何跳过这个层面又去做另外一件事情,这令我很纠结,苦逼想了许久,这几天在想下,如何把现有的知识领域去激发物联网新人去钻研,又如何去把这种Open技术精神去传承给每个人;

算了,在其位谋其职吧。我坚信:十年甚至更持续不断的精进,是任何一个人从凡人到卓越人物要走的旅程;

使用特权

评论回复
沙发
我只会加减乘除|  楼主 | 2022-5-7 10:43 | 只看该作者
2如何调整自己状态
一般地,程序员并不会去考虑用户体验,更不会去研究如何把这种技术变现,难道技术越强,那就越攒钱吗?当然,这是一方面,公司需要高技术 “秃头” 的程序员,另一方面,需要更多是为公司提高产品出货量以创造更多的收益,那么就必然会想到:如何把技术与业务结合,并发挥技术的最大价值,正是我做物联网架构的核心思想。
很多时候,白天发现手头的杂乱事情非常多,而晚上只能是披着疲惫的身躯在电脑前,没有精力去敲代码和学习,有那么一段时间像过着漫无目的的时光、瞎忙的日子,让我一度回到了毕业那会的迷茫和自卑。
为何调整?如何调整?怎么调整?我三次灵魂拷问自己,人的可贵之处在于身处泥潭中如何自救,成年人最大的本领是自愈。尝试把桌面整理干干净净,拿着相机去深圳湾拍拍风景,尝试交往一些真心的朋友,没有尔虞我诈,周末又共聚一小餐,又是美好的一天; 好了,说了这么多,今天给大家带来的是如何选择一个MQTT服务器作为高性能的通信API接口。

使用特权

评论回复
板凳
我只会加减乘除|  楼主 | 2022-5-7 10:44 | 只看该作者
3如何选择MQTT服务器
至于什么是MQTT服务器?我不再累赘,百度一堆专业术语,更详细的都有。
下面列举下最常见的三个可商用的热门的MQTT框架。 笔者从阿里云物联网平台和腾讯物联网平台都了解到其接入的节点是不支持直接通信,必须借助消息引擎这类的产品实现,不得不说,复杂很多,而且限制了很多。
所以,我是选择了EMQ X Cloud ,从2017年就注意到了这个MQTT框架,也走过了这么多年了,其产品设计是非常人性化的,非常欣赏的是它这个webhook功能,直接实现 HTTP协议和MQTT协议互通。
官方网站:https://cloud.emqx.cn 对于没有域名的同学,或者想自己搭建MQTT服务器的,可玩下 EMQX Broker 这个产品,我去年也出过这样的教程:
【文章链接】经验分享,搭建自己的MQTT服务器的方方面面细节!

而今天带给大家的是EMQ X Cloud ,作为物联网老司机,必然给大家带来福利,目前该产品有180天的免费使用时间,即无需要额外买一台主机,就可以拥有个人的MQTT服务器!
EMQ X Cloud 是 EMQ 公司推出的一款面向物联网领域的 MQTT 消息中间件产品。作为全球首个全托管的 MQTT 5.0 公有云服务,EMQ X Cloud 提供了一站式运维代管、独有隔离环境的 MQTT 消息服务。在万物互联的时代,EMQ X Cloud 可以帮助您快速构建面向物联网领域的行业应用,轻松实现物联网数据的采集、传输、计算和持久化。
按照文档来安装,最终白嫖到的服务器的后台界面如下:https://docs.emqx.cn/cloud/latest/quick_start/introduction.html




使用特权

评论回复
地板
我只会加减乘除|  楼主 | 2022-5-7 10:45 | 只看该作者
4如何玩 WebHook

前面提到了其的 WebHook 功能,那到底怎么玩呢? 首先我们得明白我们要这个来干嘛? 比如设备主动上报了状态,我们需要把这个状态存储在数据库,或上报给天猫精灵等第三方应用。


而如果我们天猫精灵等第三方应用HTTP请求控制设备的话,我们还可以通过消息发布这个特性来实现:


https://docs.emqx.cn/cloud/latest/api/publish.html

而本次介绍的是使用 EMQ X Cloud 规则引擎将数据转存到 WebHook,点击左侧菜单栏规则引擎,找到资源面板,点击新建资源,下拉选择 WebHook 资源类型。填入 URL,并点击测试如果出现错误应及时检查数据库配置是否正确。






点击左侧左侧菜单栏规则引擎,找到规则面板,点击创建,然后输入如下规则匹配 SQL 语句。在下面规则中我们从 temp_hum/emqx 主题读取消息上报时间 up_timestamp、客户端 ID、消息体(Payload),并从消息体中分别读取温度和湿度。

点击左下角添加动作,下拉选择 → 数据转发 → 发送数据到 Web 服务,选择第一步创建好的资源,并填写以下数据:
消息内容模板:
{"up_timestamp": ${up_timestamp}, "client_id": ${client_id}, "temp": ${temp}, "hum": ${hum}}

点击创建规则,并返回规则列表

这时候,看看我们的业务服务器收到的数据:






使用特权

评论回复
5
我只会加减乘除|  楼主 | 2022-5-7 10:47 | 只看该作者
5归纳总结

可能你还不清楚这个 EMQ X Cloud的webhook功能,概图如下,主要是负责MQTT服务器与私有云应用服务器之间的通信,使用的是HTTP协议双向通信。
xClouds | 深度开源的物联网云架构

1:跨平台、开发快、全开源的宗旨;
2:微信公众号内 airkiss 配网和 MQTT 控制;
3:微信小程序内配网和 MQTT 控制;
4:设备端要求:支持 airkiss 配网和 MQTT 协议即可;
5:服务器端:有微信公众号业务和各云平台对接的业务,支持但不限于 天猫精灵、小爱同学、小度音箱、Alexa音箱等;
6:扩展性强,支持用户二次开发,可私定义协议;
7:三端开源:设备端、服务器端、前端;

使用特权

评论回复
6
tpgf| | 2022-6-1 15:14 | 只看该作者
请问什么是高并发啊

使用特权

评论回复
7
aoyi| | 2022-6-1 15:27 | 只看该作者
一旦涉及到云  就感觉很高大上啊

使用特权

评论回复
8
nawu| | 2022-6-1 15:49 | 只看该作者
开源构架可以尝试一下

使用特权

评论回复
9
zljiu| | 2022-6-1 15:58 | 只看该作者
现在的云是免费用的吗

使用特权

评论回复
10
gwsan| | 2022-6-1 16:10 | 只看该作者
如何申请私有服务器啊

使用特权

评论回复
11
tfqi| | 2022-6-1 16:19 | 只看该作者
是否还取决于网速啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

159

帖子

0

粉丝