当前位置: 首页 > 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;并与…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

linux 下常用变更-8

1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行&#xff0c;YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID&#xff1a; YW3…...

三体问题详解

从物理学角度&#xff0c;三体问题之所以不稳定&#xff0c;是因为三个天体在万有引力作用下相互作用&#xff0c;形成一个非线性耦合系统。我们可以从牛顿经典力学出发&#xff0c;列出具体的运动方程&#xff0c;并说明为何这个系统本质上是混沌的&#xff0c;无法得到一般解…...

SpringCloudGateway 自定义局部过滤器

场景&#xff1a; 将所有请求转化为同一路径请求&#xff08;方便穿网配置&#xff09;在请求头内标识原来路径&#xff0c;然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

QT3D学习笔记——圆台、圆锥

类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体&#xff08;对象或容器&#xff09;QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质&#xff08;定义颜色、反光等&#xff09;QFirstPersonC…...

Java毕业设计:WML信息查询与后端信息发布系统开发

JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发&#xff0c;实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构&#xff0c;服务器端使用Java Servlet处理请求&#xff0c;数据库采用MySQL存储信息&#xff0…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...

vue3 daterange正则踩坑

<el-form-item label"空置时间" prop"vacantTime"> <el-date-picker v-model"form.vacantTime" type"daterange" start-placeholder"开始日期" end-placeholder"结束日期" clearable :editable"fal…...