TA的每日心情 | 开心 18 小时前 |
---|
签到天数: 294 天 [LV.8]以坛为家I
管理员
- 积分
- 10089
|
Java电子书:物联网系统开发:从0到1构建IoT平台 PDF 电子书 Java吧 java8.com6 R- S: r7 g3 E% j7 S: d. e4 P) b( J9 B
4 G: w3 m* D# n9 l8 ~; }" f& p! j& E作者:付强出版社:机械工业出版社出版时间:2020年09月 r; B, l- a5 b" U
6 I+ h2 F: O1 ?# T1 h编号:166-Java吧资源免费-X0247【Java吧 java8.com】! g3 w6 ?4 e, { o$ g. Y0 Q
0 q- g5 W$ @$ @6 Q
' y' R: _ @1 ?: F- f& ]: h/ ~
! X% |' ?. A; o( I3 j6 z
目录:5 f* ?3 X" ~& T) r
部分?物联网基础
* k" {* I L K$ s L第1章?什么是物联网 2% w, w1 n1 Y4 k) ^! T0 t+ b
1.1 物联网和人工智能 3
& X0 \! `- e- g( g" C1.2 物联网的现状与前景 4
( y4 F$ J/ I5 T% B+ g第2章?常见的物联网协议 6
( z, g% {: g3 y- l8 a2.1 MQTT协议 6
4 y# q$ ? p. y# A0 n% M$ H2.2 MQTT-SN协议 7% |3 J& j9 J% J3 r0 i4 x. w j1 C
2.3 CoAP协议 8% G" i) N1 h$ N2 k
2.4 LwM2M协议 9
" o" l6 W3 \7 E2.5 HTTP协议 9. P7 u' }" W j1 Y4 {( {
2.6 LoRaWAN协议 9
) ^1 {0 ^5 s( J( _/ z# `; D2.7 NB-IoT协议 10
" r4 v! ^% X7 J* w2.8 本章小结 102 P( ]9 f4 q8 m
第二部分?MQTT协议详解与实战
9 ~7 ^2 P5 O% {) S% u: D' O第3章?MQTT协议基础 13- u* L1 |; R* G& y7 r& ?
3.1 MQTT协议的通信模型 13
! C& i( U2 {8 w4 c. Q1 G- w3.2 MQTT Client 14
8 p/ |& }# Z; @3.3 MQTT Broker 15( c- F! k) E. S2 B# O" t( p
3.4 MQTT协议数据包格式 176 f& ?! G5 [. I3 ^
3.5 本章小结 19+ }# P0 L9 |" ]
第4章?MQTT协议详解 20
2 N6 y& |, s* w! @+ R0 ]4.1 建立到Broker的连接 20
" ?/ P5 T$ |. D7 X4.1.1 CONNECT数据包 20
% O" k c1 Q/ K/ G4.1.2 CONNACK数据包 23
6 E* J2 Q+ a# D3 w4.1.3 关闭连接 25" |8 f2 ]1 l6 F9 s+ c7 W8 E
4.1.4 代码实践 267 x' o8 z% u# v/ X3 G5 N6 n
4.2 订阅与发布 28
2 V* O% `2 }4 ?. \/ _4.2.1 PUBLISH数据包 30- U: Q8 F' n; l
4.2.2 代码实践:发布消息 310 m8 G$ X3 U, K; N; V* d) D4 K* |6 K) W C
4.2.3 订阅一个主题 32
1 I) I! p N6 ^4 H7 {: f4.2.4 代码实践:订阅主题 35
5 h$ A# c: V- b% m0 d4.2.5 取消订阅 368 e6 e: V9 ~1 Y& b' X1 O1 e! P9 K
4.3 QoS及其实践 39, W0 O5 v! }" p" F. z
4.3.1 MQTT协议中的QoS等级 391 e; q& ?' M; J1 G
4.3.2 QoS0 40
" W9 `' Z; q* M/ Y. a4.3.3 QoS1 404 ~2 P3 B1 B; F" i) X1 ~5 i( P
4.3.4 QoS2 42
$ S+ ]7 { f6 R3 \9 p4.3.5 代码实践:使用不同的QoS发布消息 44
; B! u# b8 ^- Y, b* V1 O2 ]4.3.6 实际的Subscribe QoS 48
2 ?1 n0 C2 D2 o; G! Z% I4.3.7 QoS的实践 48
% B) x3 I% ]$ w( Z4.4 Retained消息和LWT 49
- j) ?$ r% g5 j4.4.1 Retained消息 49: J, p% }. t. \; m3 V, A, {4 _
4.4.2 代码实践:发布和接收Retained消息 50% j0 `# U7 ?3 K5 z. A7 p
4.4.3 LWT 51
* A0 x) O1 z& _4.4.4 代码实践:监控Client连接状态 528 i. r4 k, l, l2 q$ j2 K
4.5 Keepalive与连接保活 549 [! s) U: [1 L- m/ [6 w. q/ G
4.5.1 Keepalive 54
- Q p& P: F. w, ?# P8 K2 c+ l4.5.2 代码实践 550 ~! S6 b/ g9 X, E
4.5.3 连接保活 57: W) I/ a p4 V/ K: e( \# U7 O4 h
4.6 MQTT 5.0的新特性 58
$ r$ x' o# {' Q8 p4 _1 {4.6.1 用户属性 594 M: B1 P- {8 V5 t; Z3 x- r( X
4.6.2 共享订阅 59
4 e& w1 z/ C1 X1 D$ Z$ h$ ]4.6.3 消息过期 60
% |3 R4 i' }% c$ L: i3 C4.6.4 重复主题 60
3 g: i) ]3 q; {) R4 ~4.6.5 Broker能力查询 600 V: P$ G0 ~; v) k& h
4.6.6 双向DISCONNECT 61
' g! ] K1 U1 I4.7 本章小结 61* t, k: Z; R! J2 }# s2 ]2 n, z1 U
第5章?MQTT协议实战 62
, D4 B2 z! u* `, v% m4 U5.1 “AI IoT”项目实战 62
* z" D+ ^/ D9 y5.1.1 用TensorFlow在Android系统上进行物体识别 62
" |& F& v2 M- Y0 w7 l1 R' V3 l! {5.1.2 如何在MQTT协议里传输大文件 63- {2 N% E; B# W9 S) D/ d
5.1.3 消息去重 64# G1 Y. r) v. {% m6 a" ~8 m
5.1.4 终的消息数据格式 64! @& h! |; O9 x+ D
5.1.5 代码实践:上传识别结果 64
% F6 M4 S0 f7 e, Y9 B1 z5.1.6 在浏览器中运行MQTT Client 66/ [: A7 G8 y, X7 N8 Z
5.1.7 代码实践:接收识别结果 676 i( g) d5 t- e! v) }
5.1.8 搭建私有MQTT Broker 68
- M7 i$ B% G) J K. z6 @5.1.9 传输层安全 69: z0 t: H9 k* Q% L i' ?
5.2 MQTT常见问题解答 70, U; M: }( R; p! w2 B
5.3 开发物联网应用,学会MQTT协议就够了吗 71( g9 S8 ` L+ `% C e) @
5.4 本章小结 72
6 K9 ^1 Z# O4 ]" ?第三部分?实战:从0搭建一个IoT平台* Q4 U+ a9 {, P0 l# Z: ^( }
第6章?准备工作台 75
* T8 ~$ R) A1 p" t" Z6.1 安装需要的组件 75( b$ z* x( J+ L* v8 V9 ]( s" I
6.2 Maque IotHub的组成部分 76
# M0 ~. S: F7 o4 O. _6.3 项目结构 76
# H# C/ }9 d. n) T" X6.3.1 IotHub Server 77
) V% F* [, T2 l, S9 {/ a6.3.2 IotHub DeviceSDK 77
3 p8 \8 E% r: T. o Z& w6.4 本章小结 79/ d# M! `' c$ \; i
第7章?设备生命周期管理 80
! M3 L# G3 V6 R* P7.1 设备注册 80 r" v( x! X: m0 b/ [5 H) h
7.1.1 设备三元组 80
% O' t: L4 O. B" K3 J, `7.1.2 EMQ X的认证方式 81
0 T6 M8 k2 q/ b. P% O" q' A7.1.3 设备接入流程 84
$ q1 l( m5 ?0 b2 q7.1.4 Server API:设备注册 84
3 |" M9 I9 f( ^8 e7.1.5 调整EMQ X配置 87
6 s$ b" N1 Q( E7 d+ N7.1.6 修改DeviceSDK 87
$ Z4 t7 S& k: L+ Z% p7.1.7 Server API:设备信息查询 88' h8 ? a5 U1 j1 c/ u! B9 L
7.1.8 Server API:获取接入IotHub的一次性密码(JWT) 89! @/ T" E8 X- M& D( Z
7.1.9 完善细节 91
: k6 w3 L( k* [, i1 E! ^- E7.2 设备连接状态管理 93. C T( j( j+ I; h
7.2.1 Poor man’s Solution 93" Q$ z- K* L6 H( u& ~0 r7 L: }
7.2.2 使用EMQ X的解决方案 94: E0 l& t( W |8 Z& @
7.2.3 管理设备的连接状态 973 ~% s Q% E7 [( p1 g" v2 \- {
7.3 设备的禁用与删除 101
5 o4 O% k" J$ Y& u, n" }: O7.3.1 禁用设备 101! o4 }8 Q8 \; f! A6 T3 r! j
7.3.2 删除设备 105; }& ?9 O* L0 a( G: l1 ~
7.4 设备权限管理 106
# C4 ?* { ]% ^3 k- e6 C* b7.4.1 为什么要控制Publish和Subscribe 106( v# O1 U1 x, K7 P
7.4.2 EMQ X的ACL功能 106! R( k/ x$ A3 A- s5 W0 j) a( m
7.4.3 集成EMQ X ACL 110& `6 A" Z% i' T n/ ~% {/ ^
7.5 给IotHub加一点扩展性 111: z+ V# H; Y& r6 f" U
7.5.1 EMQ X的纵向扩展 112
+ d5 V* T, n2 b7.5.2 EMQ X的横向扩展 113
3 X( \( k3 F) a4 t* J7.6 本章小结 114: J( u* e/ L, m- [. w
第8章?上行数据处理 115
4 {4 j8 t( y5 z4 m- U I8.1 选择一个可扩展的方案 115
; \ K3 v9 W% n6 T$ [6 t8.1.1 完全基于MQTT协议的方案 116- G. u. Z3 r* k+ r8 W0 B/ G
8.1.2 基于Hook的方案 117
; j1 p: |0 d2 n4 w$ n2 [! X8.1.3 数据格式 118- i% |; K* e- J) x5 c" d: x9 V- w. t
8.1.4 主题名规划 118
7 @' i0 E' V6 v |/ e8 t- j8.1.5 上行数据存储 118
% O& z0 f7 R. h- p8 S8.1.6 通知业务系统 119
9 g; U8 K7 K9 m; K8 Z8.1.7 上行数据查询 119* Z% ^9 F' S1 H
8.1.8 上行数据处理流程 120
1 m: Z3 |, b, b* D; l9 d' q5 k- R0 f8.2 实现上行数据处理功能 120; {' k% u: f; X; ~1 M& C
8.2.1 DeviceSDK的功能实现 121
& e- m/ y# ^, b7 {* j- v8.2.2 IotHub Server的功能实现 122% Y5 s, x4 Z% R( v3 U/ ^9 k, D! S
8.2.3 代码联调 1251 [- z. s; b7 m; B8 i6 v
8.2.4 通知业务系统 127
: F# X! \5 ]# i$ h1 @8.2.5 Server API历史消息查询 129
' L6 S' u4 C$ n1 T7 t8.3 设备状态上报 130 java8.com
/ p+ o4 W8 I: Z* W, @; P- l" x7 E5 g8.3.1 设备状态 130
( [' |) S- @+ f3 H8.3.2 DeviceSDK的实现 1312 ~0 K5 Y4 b! x+ a
8.3.3 IotHub Server 的实现 131
5 ]( \; Q2 N0 B8 [- g8.3.4 Server API:查询设备状态 134
1 @# i& Z% E1 w S2 _3 ~8.3.5 代码联调 134
3 A' X. k8 X6 f8.3.6 为何不用Retained Message 135
. I, g" L8 d, }( i% f8.4 时序数据库 135 java8.com/ p& ~# L- W: `& k, r W3 z/ F
8.4.1 时序数据 136( j( }3 O! \. V. P: F% F
8.4.2 时序数据库 136
4 T+ F/ l, Y S2 A& u; _/ `0 d8.4.3 收集设备连接状态变化的数据 137
4 n0 ^: Y. C' A1 ^9 |+ ~1 e8.5 本章小结 140! @( \/ \* r- k. r5 g: B
第9章?下行数据处理 141
3 u( c! Z) C" D; D) c f9.1 选择一个可扩展的方案 142
' a9 k( m/ m! {. \* E5 y9.1.1 完全基于 MQTT协议的方案 142; N8 c) F' r+ \) d- T" q I
9.1.2 基于 EMQ X RESTful API的方案 143
% I9 W( e9 F& u9.1.3 下行数据格式 1438 L+ J) _/ {% X, u7 C
9.1.4 主题名规划 144; `% w T8 T `6 q
9.1.5 如何订阅主题
- W5 _- z0 H9 g6 L q, F- c
) S2 U: {- t$ M2 L3 u1 K0 X9 @% Z0 T
8 T0 s( Q8 v* D1 F% B( m! e! m 百度云盘下载地址(完全免费-绝无套路):
5 u! K$ }# Z) p8 k6 S+ `
8 m8 g7 x. A/ U$ w$ |# P- D% Y& Y本资源由Java吧收集整理【www.java8.com】
1 Z6 H* j! m# K' a! C* [4 R6 H' R( b, ^1 `3 m( }% f# c
7 q" j* @- u& b) ^
7 O, P$ |5 I. s: m- b. [
6 B) R2 I H. o4 O |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|