Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

MQTT Essentials - A Lightweight IoT Protocol PDF 下载


分享到:
时间:2021-05-04 10:07来源:http://www.java1234.com 作者:转载  侵权举报
MQTT Essentials - A Lightweight IoT Protocol PDF 下载
失效链接处理
MQTT Essentials - A Lightweight IoT Protocol PDF 下载


本站整理下载:
提取码:yiiy 
 
 
相关截图:
 
主要内容:

Preface
MQTT is the preferred IoT publish-subscribe lightweight messaging protocol. If you develop IoT,
web applications, mobile apps, or a combination of these solutions, you must learn how MQTT and
its lightweight messaging system work. Of course, it is extremely important to take security into
account when working with this protocol.
Most of the times, when you work with IoT solutions, you won’t be using a single programming
language. Instead, you will use a combination of different programming languages and code running
on different IoT boards that might use diverse operating systems. MQTT has its own specific
vocabulary and different working modes. Learning MQTT is challenging because it includes too many
abstract concepts that require real-life examples to be easy to understand.
This book will allow you to dive deep into the latest version of the MQTT protocol: 3.1.1. You will
learn to work with Mosquitto MQTT server, command-line tools, and GUI tools to allow you to
understand how everything works with MQTT and the possibilities that this protocol provides for
your projects. You will learn security best practices and you will use them for a Mosquitto MQTT
server.
This book will provide you with examples in the following programming languages, which are
extremely popular in IoT, web applications, and mobile apps: Python, Java, HTML 5, JavaScript,
Node.js, and Swift 3. You will control a drone, interact with sensors, control home automation, and
interact with actuators by exchanging MQTT messages with the different programming languages and
client libraries.
You will be able to run the examples on a wide range of modern IoT boards, such as Raspberry Pi 3,
Raspberry Pi 2 Model B, Raspberry Pi Zero, Intel Joule, Intel Edison, and Intel Galileo Gen 2.
However, any other board that supports the programming languages explained in the book will be
able to run the samples.
What this book covers
Chapter 1, Lightweight Messaging with MQTT 3.1.1 and Mosquitto, starts our journey towards
understanding the MQTT protocol. You will learn convenient scenarios for this protocol, the details
of the publish-subscribe pattern, and message filtering. You will learn basic concepts related to
MQTT and understand the different components: clients, brokers or servers, and connections. You
will learn to install a Mosquitto broker or server on Linux, macOS, and Windows. You will learn
best practices related to topics and single-level and multilevel wildcards. We will study in detail the
different Quality of Service levels supported by MQTT and when it is convenient to use each of them.
We will analyze their advantages and disadvantages.
Chapter 2, Securing an MQTT Mosquitto Server, covers generating a private certificate authority, a
server certificate, and client certificates to enable TLS transport security and TLS client
authentication with Mosquitto. Communications between the MQTT clients and the MQTT server
will be encrypted. We will work with OpenSSL to generate the digital certificates. We will test the
MQTT TLS configuration with MQTT.fx, MQTT-spy, and the Mosquitto command-line utilities. We
will force Mosquitto to use only a specific TLS version. This way, we will understand how to
encrypt communications between the MQTT clients and the Mosquitto MQTT server.
Chapter 3, Controling a Drone with Python, analyzes the requirements for controlling a drone with
MQTT messages. We will define the topics that we will use and the commands that will be part of the
messages’ payloads to control a drone. Then, we will work with the Paho Python Client to write
Python code that connects an MQTT client to the MQTT server. We will understand the methods we
need to call for the Paho Python Client and their parameters. We will analyze how callbacks work
and we will be able to publish messages to topics, subscribe to topic filters, and receive and process
messages. We will write code that processes commands for a drone with Python. The code will be
able to run on different IoT platforms, including Intel Joule boards and Raspberry Pi 3, and also on
any computer that is capable of executing Python 2.7.x or Python 3.x. We will work with the network
loop for the MQTT client in Python. We will work with a GUI utility, command-line-based utilities,
and, finally, with Python code to control the drone and display the feedback provided by the drone.
Chapter 4, Interacting with Sensors in Java, analyzes the requirements for controlling sensors wired
to different IoT boards with MQTT messages and Java code. We will define the topics that we will
use and the commands that will be part of the messages’ payloads to control sensors. We will take
advantage of the last will and testament feature of MQTT with Java. We will work with the Eclipse
Paho Java Client to write Java code that will connect a non-blocking (asynchronous) MQTT client to
the MQTT server. We will create a security helper class to establish a TLS secured connection, and
we will work with asynchronous notifications and callbacks in Java. We will subscribe to topics,
understand how notification events work, and we will write code that processes commands that
interact with sensors. Finally, we will work with a GUI utility to interact with our Java application
through MQTT messages. We will be able to turn on and turn off the sensors and retrieve data from
them.
 

------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐