当前位置: 首页 > news >正文

边缘云是什么?

涂鸦边缘云服务

旨在解决物联网边缘位置的连接需求和提高设备自主管理能力。并与涂鸦 IoT 云服务和 IoT 终端形成云边端三位一体的端到端产品架构。使用涂鸦边缘云,能极大降低设备响应延时、降低网络带宽压力、提高算力分发能力,并构建以下技术优势:

  • 继承涂鸦 IoT 平台的基因
  • 更低的成本
  • 更快的响应
  • 大到行业应用
  • 小到微场景

产品简介

成为涂鸦开发者,除了能在涂鸦公有云的基础上进行SaaS应用开发。今后,涂鸦也将提供边缘云的开放框架,让开发者可以在边缘侧进行更多元化的SaaS应用开发,以覆盖更多的场景。

技术架构

边缘云架构由北到南,由 Open Framework、IoT PaaS、IoT Core 组成。

  • Open Framework

    开放框架,为应用开发者提供了强大的应用开发体系,丰富的应用开发接口。开发者可以在开放框架的基础上,快速地进行行业SaaS开发,专注于具体业务逻辑。

  • IoT PaaS

    丰富的行业体系,业务模型,为上层开放框架提供了坚实的基础。

  • IoT Core

    继承了涂鸦 IoT 强大的设备生态,兼容了涂鸦设备的接入,边缘网关的三方设备接入,以及其他涂鸦设备生态的接入。 

产品构成

涂鸦 IoT 边缘云支持IoT 平台纯本地化部署,所有平台组件均符合高内聚、低耦合的微服务架构设计理念。开发者可以根据自身需求,灵活选择需要的组件进行采购、部署。

核心组件

设备接入部分

设备接入部分,满足了边缘侧设备接入(南向)的需求。根据设备接入类型的不同,分为以下两个设备接入模块:

  • 三方设备接入模块:基于涂鸦边缘网关接入三方设备的能力,支持接入有标准协议的行业设备。
  • PBT 设备接入模块:支持 Powered by Tuya 的设备的接入。

开放平台部分

开放平台部分,支持了开发者(北向)应用开发的需求。开放平台部分,包括了以下三个开放平台组件:

  • 云开发基础能力:提供了和涂鸦云开发 OpenAPI 一致的开放接口。开发者可以通过 OpenAPI 调用,获得标准的设备接入能力。基于此,开发者不再需要关心各类设备的接入细节(设备接入的部分完成了各类设备的统一接入),只需要关心自身业务逻辑,对于设备能力进行调用即可。

  • SaaS 开发框架:基于涂鸦 OpenAPI,预集成了多种 IoT SaaS 功能。通过 SaaS 开发框架,开发者能快速搭建出各个行业的 SaaS 应用,极大缩短交付时间,同时显著降低开发成本。

  • 微应用框架:基于 SaaS 开发框架,搭建的前端应用低代码开发框架。

微应用

开发者可以直接开通涂鸦平台提供的微应用来使用,当涂鸦平台不能满足需求时,开发者可以基于微应用体系开发自己的微应用;也可以将涂鸦平台提供的微应用集成到业务自己的应用里。

开发者只需关注每个微应用自己内部的业务逻辑的开发,开发框架和微应用体系来提供认证(登录)、鉴权(菜单权限、操作权限)、路由(比如多个云项目切换)以及微应用集成相关体系。

基础微应用

基于微应用框架,涂鸦提供了一些基础的微应用,帮助开发者快速搭建一个边缘云解决方案。包括以下应用:

  • 账号设置
  • 用户管理
  • 权限管理
  • 资产管理
  • 设备管理

定制应用

在基础微应用之外,开发者也可以基于 SaaS 开发框架和微应用框架,开发自己的微应用,集成到边缘云解决方案中,涂鸦也提供微应用的定制开发服务。

开发方式

涂鸦 IoT 边缘云为开发者提供了多种开发方式。开发者可以根据自身能力,选择低代码开发方式,或者基于 OpenAPI 的开发方式。

低代码开发

基于涂鸦 SaaS 开发框架和微应用体系进行上层应用开发。此种开发方式下,需要用到以下边缘云组件

设备接入部分

设备接入部分,满足了边缘侧设备接入(南向)的需求。开发者可以根据设备接入需求,选配 三方设备接入模块 和 PBT 设备接入模块

  • 三方设备接入模块

    三方设备接入模块,基于涂鸦边缘网关接入三方设备的能力,支持接入有标准协议的行业设备。有此类接入需求的,请选配该模块。

  • PBT 设备接入模块

    PBT 设备接入模块,支持 Powered by Tuya 的设备的接入。 有此类接入需求的,请选配该模块。

开放平台部分

开放平台部分,支持了开发者(北向)应用开发的需求。在低代码开发方式下,开发者可以基于 SaaS 开发框架和微应用框架,搭建自己的 Web应用。SaaS 开发框架和微应用框架基于云开发基础能力实现。

  • 云开发基础能力

    云开发基础能力,提供了和涂鸦云开发 OpenAPI 一致的开放接口。开发者可以通过 OpenAPI 调用,获得标准的设备接入能力。基于此,开发者不再需要关心各类设备的接入细节(设备接入的部分完成了各类设备的统一接入),只需要关心自身业务逻辑,对于设备能力进行调用即可。

  • SaaS 开发框架

    SaaS 开发框架,是涂鸦为 IoT SaaS 开发者提供的前、后端开源框架。该框架完全基于涂鸦 OpenAPI 开发,集成了一个 IoT SaaS 必备的用户登录、角色权限、设备管理、设备控制、数据大盘等基本功能,并提供了基于 React(Ant.Design)的前端 UI 界面。开发者只需基于源码做简单的二次开发,即可快速投入商用。

  • 微应用

    开发者只需关注每个微应用自己内部的业务逻辑的开发,开发框架和微应用体系来提供认证(登录)、鉴权(菜单权限、操作权限)、路由(比如多个云项目切换)以及微应用集成相关体系。

基于 OpenAPI 开发

相较低代码开放方式,基于 OpenAPI 开发更适合于有较强开发能力的开发者。在边缘云组件的选择上,相比低代码开发,减少了开放平台部分中的 SaaS 开发框架、微应用框架相关的部分。 开发者仅需要选择:

  • 设备接入部分
  • 开放平台部分中的云开发基础能力

在此基础之上,进行上层业务的开发。 

相关文章:

边缘云是什么?

涂鸦边缘云服务 旨在解决物联网边缘位置的连接需求和提高设备自主管理能力。并与涂鸦 IoT 云服务和 IoT 终端形成云边端三位一体的端到端产品架构。使用涂鸦边缘云,能极大降低设备响应延时、降低网络带宽压力、提高算力分发能力,并构建以下技术优势&…...

Java常用数据结构

Java常用数据结构 Java中有几种常用的数据结构,主要分为Collection和map两个主要接口(接口只提供方法,并不提供实现),而程序中最终使用的数据结构是继承自这些接口的数据结构类。 一、几个常用类的区别 1&#xff0e…...

【Java基础 下】 026 -- 集合进阶(不可变集合、Stream流、方法引用)

目录 一、不可变集合 1、创建不可变集合的应用场景 2、创建不可变集合的书写格式 ①、不可变的List集合 ②、不可变的Set集合 ③、不可变的Map集合 3、小结 二、Stream流 1、体验Stream流的作用 2、Stream流的思想 3、Stream流的使用步骤 ①、单列集合获取Stream流 ②、双列集合…...

SAP 跨工厂或特定工厂的物料状态设置

在物料主数据的Basic data 1 View和MRP1 View可分别设置“跨工厂物料状态(X-plant matl status)”和“特定工厂的物料状态(Plant-sp.matl status)”。 通过对物料状态的设置,可实现对物料使用范围的限制。 例:在采购中不可用;在库存管理中不…...

jupyter的安装步骤

1.安装python文件 首先去官网python去下载python的安装包,点击donwload,选择合适的系统。这里我是windown系统,点击进去,如图找到有installer的去下载。不建议下载最新版本的,会有兼容问题。 2.安装python 点击第二个选项是自己配…...

Optional使用详解

Optional使用详解 文章目录Optional使用详解1.构造函数2.Optional.of(T value)作用使用源码&#xff08;只想知道怎么用的可以略过&#xff09;Optional.ofNullable(T value)作用使用源码.orElse(T other)作用使用源码.orElseGet(Supplier<? extends T> other)作用使用源…...

如何实现文件高速传输,推荐镭速高速文件传输解决方案

随着互联网的发展&#xff0c;文件传输越来越频繁&#xff0c;如何实现文件高速传输已经越来越成为企业发展过程中需要解决的问题&#xff0c; 在当今的业务中&#xff0c;随着与客户和供应商以及内部系统的所有通信的数据量不断增加&#xff0c;对高速文件传输解决方案的需求…...

SpringBoot整合Mybatis+人大金仓(kingbase8)

陈老老老板&#x1f9b8;&#x1f468;‍&#x1f4bb;本文专栏&#xff1a;国产数据库-人大金仓&#xff08;kingbase8&#xff09;&#xff08;主要讲一些人大金仓数据库相关的内容&#xff09;&#x1f468;‍&#x1f4bb;本文简述&#xff1a;本文讲一下Mybatis框架整合人…...

TPM 2.0实例探索2 —— LUKS磁盘加密(3)

接前文&#xff1a;TPM 2.0实例探索2 —— LUKS磁盘加密&#xff08;2&#xff09; 本文大部分内容参考&#xff1a; Code Sample: Protecting secret data and keys using Intel Platform... 二、LUKS磁盘加密实例 3. 将密码存储于TPM的LUKS 由于自动挂载需要在运行时提供一…...

嵌入式Debian主机可接HDMI显示

1、ARM是何物 ARM是一种体系架构。它使用 32 位处理器核心&#xff0c;采用 RISC&#xff08;Reduced Instruction Set Computer&#xff0c;精简指令集计算机&#xff09;架构&#xff0c;核心的运算效率高&#xff0c;占用空间小&#xff0c;功耗低&#xff0c;应用于便携式…...

驱动程序开发:基于ICM20608六轴传感器 --- 使用Regmap API 的 SPI 读取数据 之 IIO驱动

目录一、IIO 子系统简介二、IIO子系统使用的一些相关的结构体、函数等1、iio_dev 结构体  ①modes&#xff1a;是选择iio驱动设备支持的工作模式&#xff0c;模式分别有如下&#xff1a;  ②dev&#xff1a;其是一个设备结构体。  ②channels&#xff1a;为 IIO 设备通道…...

专利撰写 为什么要申请专利 申请专利对个人有什么利益关系 专利申请实例 如何申请专利 专利申请办理流程

专利撰写 专利是对发明者或创造者所创造的发明或设计提供一定期限的独占权的法律保护。撰写专利需要考虑到多方面的因素&#xff0c;包括发明或设计的技术性、可行性、独创性、保密性等等。以下是一些关于专利撰写的常见问题和注意事项&#xff1a;专利类型&#xff1a;专利包括…...

yolov5/6/7系列模型训练日志结果数据对比分析可视化

早在之前使用yolov3和yolov4这类项目的时候可视化分析大都是自己去做的&#xff0c;到了yolov5的时候&#xff0c;变成了一个工具包了&#xff0c;作者全部集成进去了&#xff0c;这里我们以一个具体的结果为例&#xff0c;如下&#xff1a;整个训练过程产生的指标等数据都会自…...

ppppp2-23

#!/bin/sh USBFILE/etc/ppp/usbdevices LIST/etc/ppp/diallist function ec25_find_ttyname() { DEVNAME$1 FLAG0 USB_FIND_PATH/sys/bus/usb/devices for dir in $(ls $USB_FIND_PATH) do echo $(ls USBFINDPATH/USB_FIND_PATH/USBF​INDP​ATH/dir) | grep ttyUSB > /dev…...

【GeoDjango框架解析——读取矢量数据写入postgis数据库】

系列文章目录 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 geodjango框架解析之读取矢量数据shp文件写入postgis数据库 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录…...

注意啦!如何通过广告吸引客户直接下单?

2023年跨境电商越来越突出&#xff0c;据业内相关人士称&#xff0c;在未来几年与跨境电商相关的政策仍会继续倾斜甚至加大力度&#xff0c;因此各行各业都响应政策&#xff0c;在新政策落实之前致力于平台的转型升级&#xff0c;做新时代创新型的高质量发展&#xff0c;其实细…...

ThinkPHP ^6图片操作进阶

图片裁剪、缩略、水印不再是TP框架系统内置的功能&#xff0c;需要安装。 目录 安装 图片处理 1.创建图片对象 2.获取图片属性 3.裁剪图像 4.生成缩略图 6.保存图像 7.水印 安装 使用composer在项目根目录打开命令行执行&#xff1a; composer require topthink/think…...

深入理解JS作用域链与执行上下文

变量提升&#xff1a; 变量提升&#xff08; hoisting &#xff09;。 我可恨的 var 关键字&#xff1a; 你读完下面内容就会明白标题的含义&#xff0c;先来一段超级简单的代码&#xff1a; <script type"text/javascript">var str Hello JavaScript hoi…...

UnityEditor编辑器扩展代码实现Project搜索的实现功能和切换Component等

反射实现切换Gameobjecect-Comp之前介绍过Kinematic Character Controller这个插件这个插件很容易和另外一个插件混淆&#xff0c;两个作者头像比较相像&#xff0c;而且这个插件的作者不太喜欢露脸&#xff08;他现在做Dot-CharacterControl去了&#xff09;&#xff0c;几乎网…...

SKAdNetwork:从0到1

一、什么是SKAdNetwork https://developer.apple.com/documentation/storekit/skadnetwork iOS14.5开始&#xff0c;获取IDFA需要用户确认授权才可&#xff0c;此时SKAdNetwork 正式回归。 SKAdNetwork 是苹果在2018年推出的一个更加保护用户隐私的归因框架&#xff0c;并与…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我&#xff0c;后续持续新增专题博文&#xff0c;谢谢&#xff01;&#xff01;&#xff01;】 上一篇我们讲了&#xff1a; 这一篇我们开始讲&#xff1a; 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下&#xff1a; 一、场景操作步骤 操作步…...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器

——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的​​一体化测试平台​​&#xff0c;覆盖应用全生命周期测试需求&#xff0c;主要提供五大核心能力&#xff1a; ​​测试类型​​​​检测目标​​​​关键指标​​功能体验基…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署&#xff0c;直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型&#xff0c;但是目前国内可能使用不多&#xff0c;至少实践例子很少看见。开发训练模型就不介绍了&am…...

【Java学习笔记】BigInteger 和 BigDecimal 类

BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点&#xff1a;传参类型必须是类对象 一、BigInteger 1. 作用&#xff1a;适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

C#中的CLR属性、依赖属性与附加属性

CLR属性的主要特征 封装性&#xff1a; 隐藏字段的实现细节 提供对字段的受控访问 访问控制&#xff1a; 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性&#xff1a; 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑&#xff1a; 可以…...

云原生安全实战:API网关Kong的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关&#xff08;API Gateway&#xff09; API网关是微服务架构中的核心组件&#xff0c;负责统一管理所有API的流量入口。它像一座…...

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台

淘宝扭蛋机小程序系统的开发&#xff0c;旨在打造一个互动性强的购物平台&#xff0c;让用户在购物的同时&#xff0c;能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机&#xff0c;实现旋转、抽拉等动作&#xff0c;增…...

go 里面的指针

指针 在 Go 中&#xff0c;指针&#xff08;pointer&#xff09;是一个变量的内存地址&#xff0c;就像 C 语言那样&#xff1a; a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10&#xff0c;通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...