IoT(Internet of things)物联网入门介绍
1、什么样的物可以入网?
- 要有数据传输通路
- 要有一点的存储功能
- 要有CPU
- 要有操作系统
- 要有专门的应用程序
- 遵循物联网的通信协议
- 在网络世界中有可被识别的唯一编号
2、MQTT协议
不是在说物联网吗?为啥扯到协议啥的?
其实互联网的本质也是通过网络、协议将海量主机进行连接的,物联网也不例外。但是物联网不太需要电脑主机那样强大的、多元的计算能力,物联网的“物”一般功能都是比较单一的,比如传感器只需要采集指标、摄像头拍视频等。
所以最简单的物联网只需要在联网的“物”上加上一个可入网、可收发消息或者更厉害一点:能进行计算的芯片,就可以达到入网的效果了。简单理解,物联网协议就是“物”与网之间的桥梁,MQTT协议就是其中比较具有代表性的一种。
- MQTT协议是IBM针对物联网提出的一种轻量级协议,建立于TCP/IP层协议之上。是物联网的重要组成成分,可能会成为物联网的事实标准。
- MQTT协议具有QoS(Quality of Service,服务质量),能够缓冲消息,并通过重传机制保证终端设备收到消息。其消息格式极其简化,最短是两个字节,提供订阅式和发布模式,高效推送消息。
- 三角色:服务器代理、订阅者、发布者
- QoS:
- 零级(至多交付一次信息),如传感器
- 一级(至少交付一次信息),确保消息到达
- 二级(准确一次交付信息),如计费系统
3、Apache Apollo服务器
看名字可以知道,Apache Apollo是一个开源的东西,它就是早期的代理服务器,是在ActiveMQ基础上发展而来的,可以支持STOMP、AMQP、MQTT、Openwire、SSL、WebSocket等多种协议。
不过,Apache Apollo服务器已经停止维护了。而且网上研究这个的也不多。
4、Apache Artemis服务器
替代Apollo的就是Artemis了。操作指令与Apollo类似,网上文档也比较齐全,按照教程也可以很快就搭建一个服务器出来。Linux和Windows都可以搭建的服务器。
单机版搭建流程如下:
- 下载,解压
- 创建broker代理:artemis create xxx
- 启动代理:xxx/bin/artemis run
- 外网访问配置
修改bootstrap.xml
<web bind="xxx.xxx.xxx.xxx:61610" path="web">
<app url="activemq-branding" war="activemq-branding.war"/>
<app url="artemis-plugin" war="artemis-plugin.war"/>
<app url="console" war="console.war"/>
</web>修改jolokia-access.xml
<allow-origin>*</allow-origin>
5.远程JMX访问
出于安全原因,默认情况下,禁用对Artemis的远程JMX访问。Artemis有一个JMX代理,该代理允许远程访问JMX mBean。通过配置文件中的
connector元素进行management.xml配置<connector connector-port="1099" connector-host="xxx.xxx.xxx.xxx" rmi-registry-port="(如果不设则任意生成)" />注意:rmi注册表将选择一个要绑定的IP地址。如果系统上存在多个IP地址/ NIC,则可以通过在artemis.profile中添加以下内容来选择要使用的IP地址:
-Djava.rmi.server.hostname=localhost
5、阿里云MQTT消息队列服务
这个很好用,也不是很贵,因为开源的服务器虽然不要钱,但研究起来总是要费一番功夫的,而且还需要自己运维。如果在资金充足的情况下,直接使用现成的服务也是很好的。
IoT(Internet of things)物联网入门介绍的更多相关文章
- 【阿里云IoT+YF3300】12.阿里云IoT Studio入门介绍
阿里云IoT Studio是针对物联网场景提供的生产力工具,可覆盖各个物联网行业核心应用场景,帮助您高效经济地完成设备.服务及应用开发.物联网开发服务提供了移动可视化开发.Web可视化开发.服务开发与 ...
- (转)MQTT 入门介绍
原文链接:https://blog.csdn.net/qq_2887... MQTT 入门介绍 一.简述 MQTT(Message Queuing Telemetry Transport,消息队列遥测 ...
- Azure Cosmos DB (一) 入门介绍
一,引言 今天是国庆.中秋双节房价的第三天,今天抽时间分享一篇关于使用Azure 提供的一项NoSql 服务-----Azure Cosmos DB.就有人问了,我听说过 MongoDB.Redis ...
- C# BackgroundWorker组件学习入门介绍
C# BackgroundWorker组件学习入门介绍 一个程序中需要进行大量的运算,并且需要在运算过程中支持用户一定的交互,为了获得更好的用户体验,使用BackgroundWorker来完成这一功能 ...
- 初识Hadoop入门介绍
初识hadoop入门介绍 Hadoop一直是我想学习的技术,正巧最近项目组要做电子商城,我就开始研究Hadoop,虽然最后鉴定Hadoop不适用我们的项目,但是我会继续研究下去,技多不压身. < ...
- [Python爬虫] 在Windows下安装PhantomJS和CasperJS及入门介绍(上)
最近在使用Python爬取网页内容时,总是遇到JS临时加载.动态获取网页信息的困难.例如爬取CSDN下载资源评论.搜狐图片中的“原图”等,此时尝试学习Phantomjs和CasperJS来解决这个问题 ...
- [Python爬虫] scrapy爬虫系列 <一>.安装及入门介绍
前面介绍了很多Selenium基于自动测试的Python爬虫程序,主要利用它的xpath语句,通过分析网页DOM树结构进行爬取内容,同时可以结合Phantomjs模拟浏览器进行鼠标或键盘操作.但是,更 ...
- JavaScript入门介绍(二)
JavaScript入门介绍 [函数] 函数function 是Javascript的基础模块单元,用于代码的复用.信息影藏和组合调用. function a(){} 函数对象Function Lit ...
- JavaScript入门介绍(一)
JavaScript入门介绍 [经常使用的调试工具][w3school.com.cn在线编辑] [Chrome浏览器 开发调试工具]按F121.代码后台输出调试:console.log("t ...
- .NET 4 并行(多核)编程系列之一入门介绍
.NET 4 并行(多核)编程系列之一入门介绍 本系列文章将会对.NET 4中的并行编程技术(也称之为多核编程技术)以及应用作全面的介绍. 本篇文章的议题如下: 1. 并行编程和多线程编程的区别. ...
随机推荐
- [转帖]快速入门:在 Red Hat 上安装 SQL Server 并创建数据库
https://learn.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat?view=sql-server-linux ...
- [转帖]5 分钟学会写一个自己的 Prometheus Exporter
https://cloud.tencent.com/developer/article/1520621学习一下怎么搭建呢. 去年底我写了一个阿里云云监控的 Prometheus Exporter, ...
- [转帖]tiup cluster reload
https://docs.pingcap.com/zh/tidb/stable/tiup-component-cluster-reload 4 Contributors 在修改集群配置之后,需要通过 ...
- Jmeter学习之六_进行https证书处理的工作
Jmeter 进行https证书处理的工作 背景 继续学习中,想着能够抓取一下https相关的信息 所以计划些一下处理过程 但是感觉自己这一块比较薄弱. 场景设计这一块应该是专业人去搞, 我这边先只是 ...
- [转帖]Kubernetes-18:Dashboard安装及使用
https://www.cnblogs.com/v-fan/p/13950268.html Helm安装Dashboard 简介 Dashboard 是 kubernetes 的图形化管理工具,可直观 ...
- [转帖]鹅厂微服务发现与治理巨作PolarisMesh实践-上
文章目录 概述 定义 核心功能 组件和生态 特色亮点 解决哪些问题 官方性能数据 架构原理 资源模型 服务治理 基本原理 服务注册 服务发现 安装 部署架构 集群安装 SpringCloud应用接入 ...
- [转帖]JVM NativeMemoryTracking ;jcmd process_id VM.native_memory;Native memory tracking is not enabled
目录 一.Native Memory Tracking (NMT) 是Hotspot VM用来分析VM内部内存使用情况的一个功能.我们可以利用jcmd(jdk自带)这个工具来访问NMT的数据. 1.N ...
- 记录一次RPC服务有损上线的分析过程
1. 问题背景 某应用在启动完提供JSF服务后,短时间内出现了大量的空指针异常. 分析日志,发现是服务依赖的藏经阁配置数据未加载完成导致.即所谓的有损上线或者是直接发布,当应用启动时,service还 ...
- ORM-gorm
ORM-gorm 官方文档 http://gorm.book.jasperxu.com/ https://learnku.com/docs/gorm/v2 gorm文档 gorm文档2
- 手撕Vue-数据驱动界面改变上
经过上一篇的介绍,已经实现了监听数据的变化,接下来就是要实现数据变化后,界面也跟着变化,这就是数据驱动界面改变. 想要实现数据变化之后更新UI界面,我们可以使用发布订阅模式来实现,先定义一个观察者类, ...