万本电子书0元读

万本电子书0元读

顶部广告

物联网系统开发:从0到1构建IoT平台电子书

(1)作者在物联网领域耕耘10余年,做过大量物联网项目,也有成功的物联网创业经历,技术积累深厚,实战经验丰富。 (2)作者深度回顾和梳理自己的学习和成长经历,本书的目标是帮助读者少走弯路、少踩坑、少重复造轮子,包含大量设计模式和*佳实践。 (3)本书得到了来自腾讯、字节跳动、诺基亚、四川大学等多企业(企业界)和高校(学术界)的多位专家联袂推荐。

售       价:¥

纸质售价:¥59.20购买纸书

151人正在读 | 0人评论 6.3

作       者:付强

出  版  社:机械工业出版社

出版时间:2020-07-01

字       数:24.8万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
内容简介 这是一本从技术原理、工程实践、设计模式和*佳实践4个维度讲解物联网系统发的著作,是作者10余年实践经验的总结。首先,通过代码实例循序渐、深浅出地介绍了物联网协议的原理与实践;然后,以一个功能完备的综合性物联网平台的搭建过程为例,讲解了如何从0到1搭建一个物联网平台,同时总结了物联网平台发中常用的设计模式和*佳实践。 全书一共12章,逻辑上可分为3大部分: 第壹部分(第1-2章) 物联网基础 对物联网的一些关键常识和各种协议行了详细的介绍。 第二部分(第3-5章) 物联网协议 通过大量实例代码详细分析和讲解了MQTT协议的规范、特性、原理和应用。 第三部分(第6-12章)物联网平台发 详细讲解了如何使用源组件和云服务从0到1搭建一个具备完备功能的物联网平台。<br/>【推荐语】<br/>(1)作者在物联网领域耕耘10余年,做过大量物联网项目,也有成功的物联网创业经历,技术积累深厚,实战经验丰富。 (2)作者深度回顾和梳理自己的学习和成长经历,本书的目标是帮助读者少走弯路、少踩坑、少重复造轮子,包含大量设计模式和*佳实践。 (3)本书得到了来自腾讯、字节跳动、诺基亚、四川大学等多企业(企业界)和高校(学术界)的多位专家联袂推荐。 (4)从技术原理、工程实践、设计模式和*佳实践4个维度讲解物联网系统发,涵盖80%以上物联网发场景,以及这些场景中可能遇到的设计和架构方面的问题。<br/>【作者】<br/>付强 物联网技术专家,有10余年从业经验,专注于物联网平台和产品的设计与发,非常熟悉各种物联网协议和物联网系统的架构与发。 现就职于某智慧社区解决方案企业的联合创始人兼CTO, 曾就职于趋势科技、诺基亚中国,以及德国和美国硅谷的初创公司。 从 C 语言到 Web 发,从微服务架构到移动发,都有涉猎。GitChat专栏作者, 撰写了多篇物联网和AI相关的专栏文章。<br/>
目录展开

前言

第一部分 物联网基础

第1章 什么是物联网

1.1 物联网和人工智能

1.2 物联网的现状与前景

第2章 常见的物联网协议

2.1 MQTT协议

2.2 MQTT-SN协议

2.3 CoAP协议

2.4 LwM2M协议

2.5 HTTP协议

2.6 LoRaWAN协议

2.7 NB-IoT协议

2.8 本章小结

第二部分 MQTT协议详解与实战

第3章 MQTT协议基础

3.1 MQTT协议的通信模型

3.2 MQTT Client

3.3 MQTT Broker

3.4 MQTT协议数据包格式

3.5 本章小结

第4章 MQTT协议详解

4.1 建立到Broker的连接

4.1.1 CONNECT数据包

4.1.2 CONNACK数据包

4.1.3 关闭连接

4.1.4 代码实践

4.2 订阅与发布

4.2.1 PUBLISH数据包

4.2.2 代码实践:发布消息

4.2.3 订阅一个主题

4.2.4 代码实践:订阅主题

4.2.5 取消订阅

4.3 QoS及其最佳实践

4.3.1 MQTT协议中的QoS等级

4.3.2 QoS0

4.3.3 QoS1

4.3.4 QoS2

4.3.5 代码实践:使用不同的QoS发布消息

4.3.6 实际的Subscribe QoS

4.3.7 QoS的最佳实践

4.4 Retained消息和LWT

4.4.1 Retained消息

4.4.2 代码实践:发布和接收Retained消息

4.4.3 LWT

4.4.4 代码实践:监控Client连接状态

4.5 Keepalive与连接保活

4.5.1 Keepalive

4.5.2 代码实践

4.5.3 连接保活

4.6 MQTT 5.0的新特性

4.6.1 用户属性

4.6.2 共享订阅

4.6.3 消息过期

4.6.4 重复主题

4.6.5 Broker能力查询

4.6.6 双向DISCONNECT

4.7 本章小结

第5章 MQTT协议实战

5.1 “AI+IoT”项目实战

5.1.1 用TensorFlow在Android系统上进行物体识别

5.1.2 如何在MQTT协议里传输大文件

5.1.3 消息去重

5.1.4 最终的消息数据格式

5.1.5 代码实践:上传识别结果

5.1.6 在浏览器中运行MQTT Client

5.1.7 代码实践:接收识别结果

5.1.8 搭建私有MQTT Broker

5.1.9 传输层安全

5.2 MQTT常见问题解答

5.3 开发物联网应用,学会MQTT协议就够了吗

5.4 本章小结

第三部分 实战:从0搭建一个IoT平台

第6章 准备工作台

6.1 安装需要的组件

6.2 Maque IotHub的组成部分

6.3 项目结构

6.3.1 IotHub Server

6.3.2 IotHub DeviceSDK

6.4 本章小结

第7章 设备生命周期管理

7.1 设备注册

7.1.1 设备三元组

7.1.2 EMQ X的认证方式

7.1.3 设备接入流程

7.1.4 Server API:设备注册

7.1.5 调整EMQ X配置

7.1.6 修改DeviceSDK

7.1.7 Server API:设备信息查询

7.1.8 Server API:获取接入IotHub的一次性密码(JWT)

7.1.9 完善细节

7.2 设备连接状态管理

7.2.1 Poor man’s Solution

7.2.2 使用EMQ X的解决方案

7.2.3 管理设备的连接状态

7.3 设备的禁用与删除

7.3.1 禁用设备

7.3.2 删除设备

7.4 设备权限管理

7.4.1 为什么要控制Publish和Subscribe

7.4.2 EMQ X的ACL功能

7.4.3 集成EMQ X ACL

7.5 给IotHub加一点扩展性

7.5.1 EMQ X的纵向扩展

7.5.2 EMQ X的横向扩展

7.6 本章小结

第8章 上行数据处理

8.1 选择一个可扩展的方案

8.1.1 完全基于MQTT协议的方案

8.1.2 基于Hook的方案

8.1.3 数据格式

8.1.4 主题名规划

8.1.5 上行数据存储

8.1.6 通知业务系统

8.1.7 上行数据查询

8.1.8 上行数据处理流程

8.2 实现上行数据处理功能

8.2.1 DeviceSDK的功能实现

8.2.2 IotHub Server的功能实现

8.2.3 代码联调

8.2.4 通知业务系统

8.2.5 Server API历史消息查询

8.3 设备状态上报

8.3.1 设备状态

8.3.2 DeviceSDK的实现

8.3.3 IotHub Server的实现

8.3.4 Server API:查询设备状态

8.3.5 代码联调

8.3.6 为何不用Retained Message

8.4 时序数据库

8.4.1 时序数据

8.4.2 时序数据库

8.4.3 收集设备连接状态变化的数据

8.5 本章小结

第9章 下行数据处理

9.1 选择一个可扩展的方案

9.1.1 完全基于MQTT协议的方案

9.1.2 基于EMQ X RESTful API的方案

9.1.3 下行数据格式

9.1.4 主题名规划

9.1.5 如何订阅主题

9.1.6 设备端消息去重

9.1.7 指令回复

9.2 DeviceSDK端的实现

9.2.1 消息去重

9.2.2 提取元数据

9.2.3 处理指令

9.2.4 回复指令

9.3 服务端的实现

9.3.1 更新ACL列表

9.3.2 EMQ X发布功能

9.3.3 Server API:发送指令

9.3.4 服务器订阅

9.3.5 通知业务系统

9.3.6 代码联调

9.4 本章小结

第10章 IotHub的高级功能

10.1 RPC式调用

10.1.1 主题规划

10.1.2 等待指令回复

10.1.3 服务端实现

10.1.4 Server API:发送RPC指令

10.1.5 更新设备ACL列表

10.1.6 更新服务器订阅列表

10.1.7 DeviceSDK端实现

10.1.8 代码联调

10.2 设备数据请求

10.2.1 更新设备ACL列表

10.2.2 服务端实现

10.2.3 DeviceSDK端实现

10.2.4 代码联调

10.3 NTP服务

10.3.1 IotHub的NTP服务

10.3.2 DeviceSDK端实现

10.3.3 服务端实现

10.3.4 代码联调

10.4 设备分组

10.4.1 功能设计

10.4.2 服务端实现

10.4.3 DeviceSDK端实现

10.4.4 代码联调

10.5 M2M设备间通信

10.5.1 主题名规划

10.5.2 服务端实现

10.5.3 DeviceSDK端实现

10.5.4 代码联调

10.6 OTA升级

10.6.1 功能设计

10.6.2 服务端实现

10.6.3 DeviceSDK端实现

10.6.4 代码联调

10.7 设备影子

10.7.1 什么是设备影子

10.7.2 设备影子的数据结构

10.7.3 设备影子的数据流向

10.7.4 服务端实现

10.7.5 DeviceSDK端实现

10.7.6 代码联调

10.8 IotHub的状态监控

10.8.1 使用RESTful API

10.8.2 使用系统主题

10.8.3 EMQ X的Listener Zone

10.8.4 代码演示

10.9 本章小结

第11章 扩展EMQ X Broker

11.1 EMQ X的插件系统

11.1.1 Erlang语言

11.1.2 安装Erlang编译工具

11.2 我们会用到的Erlang特性

11.2.1 Erlang简介

11.2.2 变量和赋值

11.2.3 特殊的Erlang数据类型

11.2.4 模式匹配

11.2.5 模块与函数

11.2.6 宏定义

11.2.7 OTP

11.3 搭建开发和编译环境

11.3.1 下载和编译EMQ X

11.3.2 使用插件模板

11.3.3 插件的代码结构

11.3.4 修改模板插件

11.4 实现基于RabbitMQ的Hook插件:emqx-rabbitmq-hook

11.4.1 代码结构

11.4.2 建立RabbitMQ连接和连接池

11.4.3 处理client.connected事件

11.4.4 处理client.disconnected事件

11.4.5 处理message.publish事件

11.4.6 编译插件

11.4.7 插件的配置文件

11.4.8 应用配置项

11.5 使用emqx-rabbitmq-hook

11.5.1 发布emqx-rabbitmq-hook插件

11.5.2 集成emqx-rabbitmq-hook

11.5.3 IotHub的全新架构

11.6 本章小结

第12章 集成CoAP协议

12.1 CoAP协议简介

12.1.1 CoAP协议的消息模型

12.1.2 CoAP协议的请求/应答机制

12.1.3 CoAP OBSERVE

12.1.4 CoAP HTTP Gateway

12.2 集成CoAP协议

12.2.1 EMQ X的CoAP插件

12.2.2 CoAP设备端代码

12.2.3 代码联调

12.2.4 CoAP协议的连接状态

12.3 本章小结

结语 我们学到了什么

附录 如何运行Maque IotHub

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部