首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

老榕树的Java专题:IOT的部分面试题

  • 25-02-17 08:21
  • 3202
  • 12288
blog.csdn.net

1.你们公司中,Iot设备一共有多少台?

        很抱歉,我不知道公司里 Iot 设备的具体数量。这通常是由设备管理部门或者通过设备管理系统来统计的。

2.如何拉取设备上报的数据?流程

  • 一般拉取设备上报数据的流程如下:
  • 首先,需要确定设备数据存储的位置,可能是在本地数据库、云端存储或者特定的数据服务器中。
  • 如果是通过网络协议与设备通信,要确保已经建立了连接并且获得了适当的权限。例如,通过 HTTP 请求或者 MQTT 协议连接到设备的数据端点。
  • 然后,根据设备数据存储系统提供的 API(应用程序接口)或者查询方法,发送请求来获取数据。这可能涉及到构造合适的 SQL 查询(如果是关系型数据库)或者使用特定的数据获取函数(对于非关系型数据库)。
  • 数据存储系统收到请求后,会处理请求并返回设备上报的数据,返回的数据格式可能是 JSON、XML 或者其他格式,需要在接收端进行解析处理。

3.设备上报数据的功能是你开发的吗?

        我没有开发设备上报数据的功能。设备上报数据的功能通常是由硬件工程师、嵌入式系统开发人员或者专门的物联网开发团队来实现的。他们会在设备的固件或者软件中编写代码,使得设备能够按照预定的协议(如 MQTT、CoAP 等)将数据发送到指定的服务器或者平台。

4.设备数据出现异常时咱么判断的?如果设备数据出现异常是通过什么报警的(websocket)?该技术是你实现的吗?详细解释一下?

  • 判断设备数据出现异常的方法有多种:
  • 范围检查:预先确定每个设备数据的合理范围,例如温度传感器的数据应该在某个合理的温度区间内。如果数据超出这个范围,就可以判断为异常。
  • 数据变化率检查:对于一些连续变化的数据,如速度、流量等,监测数据的变化率。如果变化率超过正常范围,可能表示设备出现异常。例如,一个设备的流量数据在短时间内急剧增加或者减少。
  • 数据完整性检查:检查数据是否完整,是否缺少必要的字段或者部分。
  • 如果设备数据出现异常通过 websocket 报警的过程:
  • 首先,在服务器端需要有一个 websocket 服务,这个服务能够与客户端(如监控系统)建立连接。
  • 当检测到设备数据异常时,服务器端会将异常信息封装成合适的消息格式(如 JSON 格式),其中包含设备编号、异常类型、异常时间等信息。
  • 然后通过 websocket 连接将这个异常消息发送到已连接的客户端。客户端接收到消息后,可以进行相应的显示、记录或者进一步的处理,如触发声音报警、发送短信通知等。
  • 这部分技术我没有实现,它通常是由后端开发人员和网络通信专家来构建的。他们需要深入了解 websocket 协议的原理,包括握手过程、消息格式、连接管理等知识,来确保异常报警信息能够准确、及时地发送到客户端。

5.是否会出现设备数据出现异常重复上报的情况?具体是如何解决的?

  • 是有可能出现设备数据异常重复上报的情况。
  • 解决方法:
  • 可以在服务器端设置一个缓存或者记录机制。当接收到异常数据上报时,首先检查这个异常是否已经在缓存或者记录中存在。如果已经存在,可以选择忽略这个重复的上报,或者根据一定的规则(如更新时间、异常严重程度变化等)来决定是否重新处理。
  • 对于设备端,可以优化异常上报的触发逻辑。例如,设置一个适当的时间间隔或者异常状态稳定后再进行上报,避免因为设备状态的短暂波动而导致多次重复上报。

6.你们项目中,从IOt拉取数据是调用的什么接口?接口有哪些参数?

        具体调用的接口取决于项目的架构和所使用的技术栈。

  • 可能是一个自定义的 RESTful API 接口,参数可能包括设备 ID(用于指定要拉取数据的设备)、时间范围(用于获取特定时间段内的数据)、数据类型(如果设备上报多种类型的数据,用于筛选需要的数据类型)等。
  • 或者是一个基于 MQTT 协议的主题订阅接口,参数可能包括主题名称(每个设备上报的数据可能对应一个特定的主题)、QoS(服务质量等级,用于保证数据传输的可靠性)等。

7.iot基于什么协议传输的?详细解释一下?

  • Iot 设备可以基于多种协议传输数据,常见的有:
  • MQTT(Message Queuing Telemetry Transport):
  • 这是一种轻量级的发布 / 订阅消息传输协议。它专为物联网设备设计,采用发布 / 订阅模式。设备可以作为发布者将数据发布到特定的主题(Topic),而服务器或者其他客户端可以作为订阅者订阅感兴趣的主题来接收数据。
  • 例如,一个温度传感器设备可以将温度数据发布到名为 “temperature/sensor1” 的主题下,而监控系统可以订阅这个主题来获取温度数据。MQTT 协议具有低带宽占用、低功耗等特点,适合在网络资源有限的物联网环境中使用。
  • CoAP(Constrained Application Protocol):
  • 这是一种专门为受限节点(如低功耗、低计算能力的物联网设备)设计的应用层协议。它基于 REST 架构风格,使用 UDP 协议进行传输,减少了建立连接的开销,提高了传输效率。
  • 例如,一个智能照明设备可以通过 CoAP 协议接收控制命令或者发送状态数据,使得设备能够在资源受限的情况下实现简单高效的数据交互。
  • HTTP(Hypertext Transfer Protocol):
  • 这是一种广泛使用的网络协议。在物联网中,一些具有足够计算能力和网络资源的设备也会使用 HTTP 协议来传输数据。设备可以通过发送 HTTP 请求(如 POST 请求)将数据发送到服务器。
  • 例如,一个网络摄像头可以将视频数据通过 HTTP 协议发送到云端存储服务,不过 HTTP 相对来说开销较大,不太适合资源受限的设备。
注:本文转载自blog.csdn.net的程序员_老榕树的文章"https://blog.csdn.net/m0_62890527/article/details/144759901"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

124
嵌入式
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top