精华内容
下载资源
问答
  • 2022-01-19 14:11:34

    一、什么是OSS?

    「OSS」的英文全称是Object Storage Service,翻译成中文就是「对象存储服务」,官方一点解释就是对象存储是一种使用HTTP API存储和检索非结构化数据和元数据对象的工具。

    白话文解释就是将系统所要用的文件上传到云硬盘上,该云硬盘提供了文件下载、上传等一列服务,这样的服务以及技术可以统称为OSS,业内提供OSS服务的厂商很多,知名常用且成规模的蓝队云等。

    在这里插入图片描述

    二、OSS相关的术语

    1.存储空间(Bucket)

    存储空间是您用于存储对象(Object)的容器,所有的对象都必须隶属于某个存储空间。

    2.对象/文件(Object)

    对象是 OSS 存储数据的基本单元,也被称为OSS的文件。对象由元信息(Object Meta)、用户数据(Data)和文件名(Key)组成。对象由存储空间内部唯一的Key来标识。

    3.地域(Region)

    地域表示 OSS 的数据中心所在物理位置。您可以根据费用、请求来源等综合选择数据存储的地域。详情请查看OSS已经开通的Region。

    4.访问域名(Endpoint)

    Endpoint 表示OSS对外服务的访问域名。OSS以HTTP RESTful API的形式对外提供服务,当访问不同地域的时候,需要不同的域名。通过内网和外网访问同一个地域所需要的域名也是不同的。具体的内容请参见各个Region对应的Endpoint。

    5.访问密钥(AccessKey)

    AccessKey,简称 AK,指的是访问身份验证中用到的AccessKeyId 和AccessKeySecret。OSS通过使用AccessKeyId 和AccessKeySecret对称加密的方法来验证某个请求的发送者身份。AccessKeyId用于标识用户,AccessKeySecret是用户用于加密签名字符串和OSS用来验证签名字符串的密钥,其中AccessKeySecret 必须保密。

    三、OSS的好处:

    简单的HTTP API,包含所有主要操作系统和编程语言的客户端。只需支付使用的费用。对发布静态资产的内置支持允许您使用更少的服务器。一些对象存储提供内置的CDN集成,可以缓存资产以加快页面加载速度。可选的版本控制允许您检索旧版本的对象以从意外数据覆盖中恢复。可以轻松扩展对象存储服务,而无需额外的资源或体系结构更改。不需要支持硬盘驱动器和RAID阵列,因为所有这些都由存储提供商处理。使用数据对象存储元数据片段的能力将简化应用程序体系结构。

    四、对象存储的缺点:

    此类存储库将无法维护传统数据库。对象存储不允许按片段更改数据。只能修改整个对象,这会影响性能。例如,在文件系统中,您可以轻松地在日志末尾添加一行。在对象存储系统中,为此需要还原对象,添加新行并将整个对象写回。因此,这种存储不适用于数据经常变化的应用。操作系统无法像常规磁盘一样安装对象存储。有几个客户端和适配器,但一般来说,使用和浏览对象存储并不像在文件浏览器中使用目录那么容易。

    总而言之,OSS非常适合存储静态资源,例如,用于存储用户定义的内容:图像和电影,存储备份文件和日志。

    更多相关内容
  • CAN笔记(21) 服务数据对象

    万次阅读 2019-09-11 14:36:19
    服务数据对象、通讯原则、快速 SDO 协议、普通 SDO 协议


    1. 服务数据对象

    CAN笔记(17) 预定义报文ID 提及到:
    服务数据对象 SDO (Service data object)主要用于 CANopen 主站对从节点的参数配置
    服务确认是 SDO 的最大的特点,为每个消息都生成一个应答,确保数据传输的准确性
    如果超时没有确认,则发送节点将 会重新发送原报文
    在这里插入图片描述

    这就像快递, 需要收方签收后, 给寄方发送一个已经签收的确认才算完成一次投递

    在一个 CANOpen 系统中,通常
    CANOpen 从节点作为 SDO 服务器(Sever)
    CANOpen 主节点作为 SDO 客户端(Client)
    称为 CS 通讯

    SDO 客户端通过索引和子索引,能够访问 SDO 服务器上的对象字典
    这样 CANOpen 主节点可以访问从节点的任意对象字典项的参数
    并且 SDO 也可以传输任何长度的数据(当数据长度超过 4 个字节时就拆分成多个报文来传输)


    2. 通讯原则

    SDO 的通讯原则非常单一:
    在这里插入图片描述
    发送方(客户端) 发送 CAN-ID 为 600h + Node-ID 的报文
    其中 Node-ID 为接收方(服务器) 的节点地址, 数据长度均为 8 字节

    接收方(服务器) 成功接收后, 回应 CAN-ID 为 580h + Node-ID 的报文
    这里的 Node-ID 依然是接收方(服务器) 的节点地址, 数据长度均为 8 字节


    3. 快速 SDO 协议

    最常用最常见的 SDO 协议是快速 SDO
    所谓快速, 就是 1 次来回就搞定,前提是 读取和写入的值不能大于 32 位
    命令中直接包含了要读写的索引、 子索引、 数据

    快速 SDO 的难点在于 command specifier(CS)命令符的记忆:

    在这里插入图片描述
    通过快速 SDO, 可以直接对 CANOpen 节点的对象字典中的值进行读取和修改
    所以在做 参数配置 之外, 也经常作为 关键性数据传输 之用
    比如 CANOpen 控制机器人的电机转动角度时, 就使用 SDO 来传输, 保证可靠转动角度


    4. 普通 SDO 协议

    当需要传输的值 超过 32 位
    就不能使用快速 SDO 传输,必须使用普通 SDO 进行 分帧传输

    在应用中较少用到, 一般用于 CANOpen 节点的程序固件升级
    或者做网关转换 MVB 总线之类数据最大可达 256 位的应用

    普通 SDO 协议难点在于分包逻辑与 CS 命令符的变化

    下载协议 (download protocol) :
    在这里插入图片描述
    上传协议 (upload protocol):
    在这里插入图片描述

    当然普通SDO的CAN帧ID与快速SDO相同,依然:
    发送方(客户端)发送的报文CAN-ID为 600h + Node-ID 的报文
    接收方(服务器) 成功接收后, 回应 CAN-ID 为 580h + Node-ID 的报文


    参考:

    《CANopen 轻松入门》


    相关推荐:

    CAN笔记(20) 过程数据对象
    CAN笔记(19) 网络管理
    CAN笔记(18) 对象字典
    CAN笔记(17) 预定义报文ID
    CAN笔记(16) CANOpen简介


    谢谢!

    展开全文
  • 数据访问对象模式

    千次阅读 2019-09-25 20:03:19
    数据访问对象模式(Data Access Object Pattern)或 DAO 模式用于把低级的数据访问 API 或操作从高级的业务服务中分离出来。以下是数据访问对象模式的参与者。 数据访问对象接口(Data Access Object Interface) -...

    介绍

    数据访问对象模式(Data Access Object Pattern)或 DAO 模式用于把低级的数据访问 API 或操作从高级的业务服务中分离出来。以下是数据访问对象模式的参与者。

    • 数据访问对象接口(Data Access Object Interface) - 该接口定义了在一个模型对象上要执行的标准操作。
    • 数据访问对象实体类(Data Access Object concrete class) - 该类实现了上述的接口。该类负责从数据源获取数据,数据源可以是数据库,也可以是 xml,或者是其他的存储机制。
    • 模型对象/数值对象(Model Object/Value Object) - 该对象是简单的 POJO,包含了 get/set 方法来存储通过使用 DAO 类检索到的数据。

    实现

    我们将创建一个作为模型对象或数值对象的 Student 对象。StudentDao 是数据访问对象接口。StudentDaoImpl 是实现了数据访问对象接口的实体类。DaoPatternDemo,我们的演示类使用 StudentDao 来演示数据访问对象模式的用法。

    数据访问对象模式

    步骤 1

    创建数值对象。

    Student.java

    public class Student {
    
        private String name;
        private int rollNo;
    
        Student(String name, int rollNo){
            this.name = name;
            this.rollNo = rollNo;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public int getRollNo() {
            return rollNo;
        }
    
        public void setRollNo(int rollNo) {
            this.rollNo = rollNo;
        }
    
    }
    

    步骤 2

    创建数据访问对象接口。

    StudentDao.java

    public interface StudentDao {
    
        List<Student> getAllStudents();
    
        Student getStudent(int rollNo);
    
        void updateStudent(Student student);
    
        void deleteStudent(Student student);
    
    }
    

    步骤 3

    创建实现了上述接口的实体类。

    StudentDaoImpl.java

    public class StudentDaoImpl implements StudentDao {
    
        //列表是当作一个数据库
        List<Student> students;
    
        public StudentDaoImpl() {
            students = new ArrayList<Student>();
            Student student1 = new Student("Robert", 0);
            Student student2 = new Student("John", 1);
            students.add(student1);
            students.add(student2);
        }
    
        @Override
        public void deleteStudent(Student student) {
            students.remove(student.getRollNo());
            System.out.println("Student: Roll No " + student.getRollNo()
                    + ", deleted from database");
        }
    
        //从数据库中检索学生名单
        @Override
        public List<Student> getAllStudents() {
            return students;
        }
    
        @Override
        public Student getStudent(int rollNo) {
            return students.get(rollNo);
        }
    
        @Override
        public void updateStudent(Student student) {
            students.get(student.getRollNo()).setName(student.getName());
            System.out.println("Student: Roll No " + student.getRollNo()
                    + ", updated in the database");
        }
    
    }
    

    步骤 4

    使用 StudentDao 来演示数据访问对象模式的用法。

    CompositeEntityPatternDemo.java

    public class DataAccessObjectPatternDemo {
    
        public static void main(String[] args) {
            StudentDao studentDao = new StudentDaoImpl();
    
            //输出所有的学生
            for (Student student : studentDao.getAllStudents()) {
                System.out.println("Student: [RollNo : "
                        + student.getRollNo() + ", Name : " + student.getName() + " ]");
            }
            System.out.println();
    
            //更新学生
            Student student = studentDao.getAllStudents().get(0);
            student.setName("Michael");
            studentDao.updateStudent(student);
            System.out.println();
    
            //获取学生
            studentDao.getStudent(0);
            System.out.println("Student: [RollNo : "
                    + student.getRollNo() + ", Name : " + student.getName() + " ]");
        }
    
    }
    

    步骤 5

    验证输出。

    Student: [RollNo : 0, Name : Robert ]
    Student: [RollNo : 1, Name : John ]
    Student: Roll No 0, updated in the database
    Student: [RollNo : 0, Name : Michael ]
    
    展开全文
  • 将影像存放到sde里,做服务迁移,找到原有的mxd文档,在新环境中重新发布,发布成功,但是将服务拖到arcmap中,提示 无法将指定的数据对象添加到地图 排查: (1)mxd文档打开之后可以看到影像,表明数据...

    问题描述

          将影像存放到sde里,做服务迁移,找到原有的mxd文档,在新环境中重新发布,发布成功,但是将服务拖到arcmap中,提示 无法将指定的数据对象添加到地图

     

     

     

    排查:

    (1)mxd文档打开之后可以看到影像,表明数据路径没问题,数据也没问题

    (2)发布时,选择预览,可以看到服务,也没问题

    (3)在arcgis server的rest目录下,找到服务,选择export map,同样可以看到服务,说明服务是没有问题的

     

    结果:

    (1)arcmap 10.1连接arcgis server10.2,没有问题

    (2)arcmap10.2连接arcgis server10.2.2 没有问题

    (3)arcmap10.1连接arcgis server10.2.2 有问题

           最后排查发现是用户那边的桌面版本过低,10.2.2的server相对于10.2升级了很多,10.1的arcmap连接10.2.2发服务,会遇到一些问题,所以通过将桌面升级到10.2解决了问题。

     

    建议:

          保证arcmap和arcgis server版本一致,可以解决很多不必要的问题

     

    附录

                 欢迎大家关注我的微信公众号:gis小僧

     

     

     

    展开全文
  • DDD-领域对象与领域服务

    千次阅读 2019-02-20 21:31:05
    为什么把这么小的点拿出来讲,最开始在讨论中领域对象与领域服务时,觉得行为放在service/entity中区别不大,只是一个放置位置的问题,并不影响到代码的抽象和复用,所以没有实行。但是最近在推动产品进行DDD业务...
  • 阿里云的对象存储服务,oss 简介

    千次阅读 2021-10-22 13:50:19
    阿里云的对象存储服务,oss 简介 在电子科大的21学年的 数据库新技术 课程中,我接触到了一个 对象存储的 概念。 过往接触的就是那些 mysql 这些二维表的数据库,在做一些java 项目,比如 springboot 的项目中,也是...
  • 阿里云OSS(对象存储服务)简介

    万次阅读 多人点赞 2018-06-15 11:13:24
    所以提前熟悉一下,做一个记录注:阿里云官方文档已经很详细的阐述了OSS、以及开发流程,本文大多都是参考官方文档OSS官方介绍地址:https://help.aliyun.com/document_detail/31947.html阿里云对象存储服务(Object...
  • 文章目录前言数据探查服务的初始点:元数据的同步数据探查服务的分析:索引结构的重新构建数据探查服务的结果:汇聚表DB的存储数据探查服务的额外功能:节点级别的统计数据探查服务的外部展现:用户控制台引用 ...
  • 《面向对象的用电信息数据交换协议》-698协议的理解 写在前面 DL/T 698.45是面对对象的通信协议,适用于主站和采集终端、采集终端和电能表、主站和电能表之间。DL/T 645是面向过程的通信协议适用于采集终端和电能表...
  • 面向对象的用电信息数据交换协议段性总结 为了适应国家电网改革发展的需要,为了使我们形成一个对698协议专业的认知,以及培养我们基本的开展项目技能,特此,结合自己以前对698协议的理解以及运用中的心得体会,...
  • 数据结构与对象的区别

    千次阅读 2014-04-04 12:47:28
    最常见的应用在分布式服务,以wcf,webservice,reset之类的分布式服务中不可或缺的数据传输对象(DTO)模式,DTO(Request/Response)就是一个很典型的数据载体,只存在简单的get,set属性,并且更倾向于
  • Request作为域对象存取数据

    千次阅读 2017-06-28 19:47:04
    Request作为域对象  Request作为域对象的API l 向Request域中保存数据 setAttribute() l 从Request域中获取数据 getAttribute() l 从Request域中移除数据 removeAttribute() Request作为域对象...
  • 数据访问对象(DAO)设计模式 in Java

    千次阅读 2016-02-29 23:47:24
    数据访问对象(DAO) 设计模式是一个非常受欢迎的实现 Java 应用中持久层的设计模式,它是基于抽象和封装设计原则并且避免应用受到来自持久层的改变所带来的影响。比如说,将数据从 Oracle 换到 MySQL,或者将持久化...
  • 2,导出数据文件 (可以多选)   导出步骤tools -&gt;export tables,选择要导出的表及导出的格式进行导出。    导出为sql格式,如下图:        导出步骤工具 -&gt;导出表,选择要导出的对象,...
  • 无法打开服务器服务性能对象数据段的第一个四字节 (DWORD) 包含状态代码。 解决方法:修改注册表禁用PerfNet性能计数器。具体方法:打开注册表,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PerfNet...
  • ajax引擎对象通过responseText属性 或者responseXML属性 接收服务器回送的数据
  • 对象存储OSS服务

    万次阅读 2018-07-27 08:13:58
    阿里云对象存储服务(Object Storage Service,简称OSS)为您提供基于网络的数据存取服务。使用OSS,您可以通过网络随时存储和调用包括文本、图片、音频和视频等在内的各种非结构化数据文件。 阿里云OSS将数据文件...
  • 对象创建2.1 将对象数据下载到文件中2.2 复制对象数据2.3 副本组合创建对象2.4 本地数据流上传到对象2.5 将文件中的数据上传到存储桶中的对象3.对象删除3.1 移除一个对象3.2 移除多个对象二、对象标签配置1.删除...
  • 几种服务分层架构及其对象命名规范

    万次阅读 多人点赞 2020-03-04 20:48:50
    1、经典的三层架构 (这不合理,太复杂的分层会导致混乱,《阿里巴巴手册》还是很... DTO( Data Transfer Object):数据传输对象,Service或Manager向外传输的对象。 BO( Business Object):业务对象。 由Serv...
  • 最近电脑经常有这个日志告警 :  无法打开服务器服务性能对象数据段的第一个四字节 (DWORD) 包含状态代码。
  • Vue传递对象数据,后台解析并使用

    万次阅读 2019-05-24 18:02:00
    2.vue代码对应的数据初始化和对应的updateTab方法 //数据初始化 Tab: { tabName: "", parentId: "", tabDescribe: "" }, //确定按钮对应的方法 updateTab() { this.FormVisible = false; let data = ...
  • Dozer数据对象转换神器

    万次阅读 2016-08-04 10:46:58
    然而在很多情况下,某层内部的数据是不允许传递到其它层,不允许对外暴露的,特别是在分布式的系统中,内部服务的数据对外暴露,也不允许不相关的数据传入到本服务,所以需要对数据对象进行转换。  其次,为什么...
  • request对象学习 /** * request对象学习: ... * 获取请求头数据 * req.getMethod();//获取请求方式 * req.getRequestURL();//获取请求URL信息 * req.getRequestURI();//获取请求URI信息...
  • 开源对象存储MinIO技术白皮书

    万次阅读 多人点赞 2019-09-27 13:38:36
     MinIO集群扩展加入新了集群或桶后,对象存储的客户端程序需要通过统一域名/url(如bucket1.domain.com)来访问数据对象,这个过程涉及到了CoreDNS系统。 CoreDNS实现单一域名/URL访问   MinIO对象...
  • 前边成功创建好一个cxf的webServcie服务,并带了一个...但是调用自定义对象为参数的方法时,实际数据并没有传递成功,于是在网上搜索一番后找到了解决办法,成功实现这一功能。具体实现步骤大致如下:1、在服务项目中添
  • 数据对象是所有Shell数据传输的要点。数据对象主要用作数据容器,用以存储要传输的数据。然而,传输目标也可以与数据对象通信,以方便处理像优化的移动这样特定类型的Shell数据传输。本文提供对Shell数据对象...
  • 对象存储(OSD)及架构原理

    千次阅读 2020-06-30 16:11:50
    什么是对象存储(OSD)? 存储局域网(SAN)和网络附加存储(NAS)是我们比较熟悉的两种主流网络存储架构,而对象存储(Object-based Storage)是一种新的网络存储架构,基于对象存储技术的设备就是对象存储设备(Object...
  • 气象数据统一服务接口(MUSIC)简介

    万次阅读 2017-01-03 17:30:22
    气象数据统一服务接口(MUSIC:Meteorological Unified Service Interface Community),基于国省统一的数据环境(CIMISS),面向气象业务和科研,提供全国统一、标准、丰富的数据访问服务和应用编程接口(API),为...
  • Request作为域对象存取数据 Request作为域对象 Request作为域对象的API   Attribute:属性 标志的意思   向Request域中保存数据:setAttribute(String name, Object o);   从Request域中获取数据:...
  • 对象存储(云存储)概述

    万次阅读 多人点赞 2019-03-08 17:54:09
    文章目录三种存储形态1、块存储2、文件存储3、对象存储对象存储对象存储需求对象存储含义对象存储与传统网络存储的区别扩展知识:NAS与SAN概述1、NAS(Network Attached Storage)优点局限2、SAN(Storage Area ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,789,275
精华内容 715,710
关键字:

服务数据对象