
Gartner 预测,物联网设备在 2021 年将增长到 250 亿。物联网很有可能成为继 AI 和区块链之后的下一个风口。各大云服务商也分别推出了自己的物联网平台和服务。比如,阿里云 IoT、AWS IoT…… 但如果你正在从事物联网项目的开发,或者打算投身于物联网应用开发事业,再或者想做一些物联网的知识储备以应对不断变化的技术趋势……那么,还是需要好好规划下自己的学习路径。
理解物联网软件的设计思路和实现逻辑
其实我们可以把物联网开发和 Web 开发进行以下类比。 先来回想一下我们是怎么学习 Web 开发的。首先我们会了解一下 HTTP 协议,然后选择一个框架,比如 Java 的 Spring Boot、 Python 的 Django、Ruby 的 Rails 等。 这些框架提供固定的模式,对软件进行了高度的抽象和分层,比如集成了一些 Web 开发的 Good Practice。你知道在 Model 层处理业务的逻辑,用 ORM 来进行数据库操作,在 Controller 层处理输入输出和跳转,在 View 层渲染 HTML 页面……这样一个网站和 Web 服务就能够很快被开发出来,除了性能优化的时候,你几乎不用去想 HTTP 协议的细节。 回到物联网开发上,抛开设备端的异构性,单说服务端的架构这块,和 Web 开发不同的是,物联网开发并没有一个 Well Known 的模式、架构或开发框架,开发者往往还是需要从协议这一层慢慢往上搭积木,学习曲线还是比较陡的。 我的上一门课程《MQTT 协议快速入门》详细讲解了 MQTT 协议及其各种特性。在课程的交流群中,读者们也提了很多问题,除了关于 MQTT 协议本身的内容以及特性相关的问题之外,还有很多问题是关于物联网软件设计和架构方面的,比如:- 我应该如何管理我的设备和设备的状态?
- 业务服务端应该怎么接收、处理和存储来自设备的数据?
- 我的设备数量很多, Broker 端应该怎么架设来确保性能和扩展性?
- 我的设备处理能力有限,除了使用 MQTT 协议以外,还有没有其他的选择?
- ……

关于我
同时,我也在密切地关注着各大云服务商(比如阿里云、AWS 等)提供的 IoT 平台,在一些功能上,我们的设计思路和实现逻辑是非常相似的,同时我也会把在云 IoT 平台上的新功能或者更好的实现集成到自研的物联网平台上。我希望把我多年的经验积累都分享给你,让你在物联网开发这条路上,少走些弯路、少踩些坑。
与《MQTT 协议快速入门》侧重协议内容和理论不同,本门课程包含大量的实战代码,毕竟代码是程序员之间交流的最好语言。
课程学习目录
