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

AIP-148 标准域

编号148
原文链接AIP-148: Standard fields
状态批准
创建日期2020-10-06
更新日期2020-10-06

一些概念在任何API集合中都很常用。对于这些概念,使用统一的标准域名字和行为来表达它们,是非常有用的。

指南

标准域 应当 用于描述其相应概念, 不应 用于任何其他目的。

资源名字和标识

name

每个资源 必须 有一个 string name 域,记录资源名字(AIP-122),它 应当 是资源的第一个域。

注意 _name 后缀 不应 用于描述其他类别的名字,本AIP中另有说明的除外。

parent

string parent 域表示集合的上级资源的资源名字, 应当 在大多数 List (AIP-132)和 Create (AIP-133)请求中使用。

其他名字

display_name

string display_name 域 必须 是一个可变的、用户可设定域,用户可以提供一个用于界面的易于阅读的名字。声明友好资源 应当 包含这个域。

显示名字 不应 存在唯一性要求, 应当 限制不超过63个字符。

title

string title 域 应当 是实体的正式名字,例如公司名字。它是 string display_name 的一个正式的变体。

given_name

string given_name 域 必须 指代人类或动物的名(译注:“姓名”的名)。资源 不得 使用 first_name 表示这个概念,因为在许多文化中,名不会排在姓的前面。

family_name

string family_name 域 必须 指代人类或动物的姓。资源 不得 使用 last_name 表示这个概念,因为在许多文化中,姓不会排在姓名最后。

时间戳

create_time

仅输出域 google.protobuf.Timestamp create_time 必须 表示资源创建时的时间戳。 可以 是创建操作开始时间或完成时间。声明友好资源 应当 包含这个域。

update_time

只输出域 google.protobuf.Timestamp update_time 必须 表示资源最近一次修改时的时间戳。用户对资源所做的任何改变 必须 更新此值;服务内部对资源所做的改变 可以 更新此值。声明友好资源 应当 包含此域。

delete_time

只输出域 google.protobuf.Timestamp delete_time 必须 表示资源软删除时的时间戳。 可以 对应于用户请求删除的时间,或服务成功软删除资源的时间。如果资源没有被软删除, delete_time 域 必须 为空。

支持软删除的资源(AIP-164) 应当 提供此域。

expire_time

google.protobuf.Timestamp expire_time 域 应当 表示给定资源或资源属性不可用或失效的时间(例如轮换安全密钥)。 可以 用于AIP-214中描述的类似形式的失效时间。

服务 可以 提供不太精确的 expire_time 值,但资源 不得 在该时间之前失效。

purge_time

google.protobuf.Timestamp purge_time 域 应当 表示软删除的资源计划从系统中清除的时间(参考AIP-164)。 可以 用于AIP-214中描述的类似形式的失效时间。支持软删除的资源 应当 包含此域。

服务 可以 提供一个不太精确的 purge_time 值,但系统 不得 在该时间之前清除资源。

标注

为了存储少量的任意数据, 可以 添加一个 map<string, string> annotations 域。

annotations 域 必须 使用Kubernetes限制来保证传输兼容性, 应当 使用点(“.”)分隔命名空间注释键,防止工具互相干扰。

可能存储在标注域中的信息示例包括:

  • 对于CI/CD,用于流转的流水线运行实例标识符,或版本控制标识符。

注意 annotations 与其他形式的标签不同。标签可以供服务器端策略使用,例如IAM条件。标注的目的是允许客户端工具记录自己的状态信息,而不需要数据库。

已知字符串域

IP地址

表示IP地址的域 必须 符合以下要求:

  • 使用类型 string 。
  • 使用名字 ip_address 或以 _ip_address 结尾。如 resolved_ip_address 。
  • 表明IP地址版本格式,使用 IPV4 、 IPV6 ,或者在同时支持二者时,使用 IPV4_OR_IPV6 (参考AIP-202)。
uid

只输出域 string uid 指的是系统分配的资源唯一标识符。如果使用此域, 它 必须 是UUID4, 必须 通过 UUID4 格式扩展表明格式(参考AIP-202)。声明友好资源 应当 包含此域。

进一步阅读

  • 关于标准化代号,请参考AIP-143。
  • 关于 etag 域,请参考AIP-154。
  • 关于 request_id 域,请参考AIP-155。
  • 关于 filter 域,请参考AIP-160。
  • 关于资源修订相关域,请参考AIP-162。
  • 关于 validate_only 域,请参考AIP-163。
  • 关于软删除和恢复删除相关域,请参考AIP-164。

理由

已知字符串域

一些域用来表示非常明确的概念,或者带有严谨语义的工件。对于这些域,提供统一API接口很重要。促进了API消费者工具和文档的优化改进工作,同时提供了跨平台的统一用户体验。

历史

在2023年7月之前,软删除资源的 purge_time 也称为 expire_time 。引入 purge_time 可以减少用户困惑。

修订记录

  • 2023-10-05 引入已知字符串域,包括IP地址和 uid 。
  • 2023-08-14 从AIP-128引入术语 annotations 。
  • 2023-07-13 引入术语 purge_time 。
  • 2021-04-06 要求 uid 和 delete_time 是只输出域。

相关文章:

AIP-148 标准域

编号148原文链接AIP-148: Standard fields状态批准创建日期2020-10-06更新日期2020-10-06 一些概念在任何API集合中都很常用。对于这些概念&#xff0c;使用统一的标准域名字和行为来表达它们&#xff0c;是非常有用的。 指南 标准域 应当 用于描述其相应概念&#xff0c; 不…...

Docker构建时,设定默认进入的工作目录的方法

在 Docker 中,你可以通过不同的方式来设定容器默认进入的目录,以下针对不同场景分别介绍具体方法: 1. 使用 Dockerfile 设定工作目录 如果你是通过构建镜像的方式来运行容器,那么可以在 Dockerfile 中使用 WORKDIR 指令来设置容器启动时的默认工作目录。以下是具体步骤:…...

2025年3月最新算法-鲸鱼迁徙优化算法Whale Migration Algorithm-附Matlab免费代码

引言 本期介绍了一种基于座头鲸协同迁移行为的创新生物启发式优化方法——鲸鱼迁徙优化算法Whale Migration Algorithm&#xff0c;WMA。该算法于2025年3月最新发表在期刊 Results in Engineering 在本节中&#xff0c;我们概述了开发鲸鱼迁移算法&#xff08;WMA&#xff09;…...

day56 第十一章:图论part06

108.冗余连接 注意init初始化 改进&#xff1a; 其实只有一条边冗余&#xff0c;改为&#xff0c;如果两条边在同一个集合里&#xff0c;就输出&#xff0c;不然加入。 #include <iostream> #include <vector> using namespace std;int n 1005; vector<int>…...

flowable适配达梦数据库

文章目录 适配相关问题无法从数据库产品名称“DM DBMS”中推断数据库类型分析解决 构建ibatis SqlSessionFactory时出错&#xff1a;inStream参数为null分析解决 liquibase相关问题问题一&#xff1a;不支持的数据库 Error executing SQL call current_schema: 无法解析的成员访…...

Jenkins整合Jmeter实现接口自动化测试

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 一、安装jmeter 下载&#xff1a;http://jmeter.apache.org/download_jmeter.cgi 这里我用了一台Windows安装jmeter用来写接口测试的脚本&#xff0c;启动前修改j…...

高级推理的多样化推理与验证

25年2月来自波士顿大学、NotBadMath.AI、谷歌、哥伦比亚大学、MIT、Intuit公司和斯坦福大学的论文“Diverse Inference and Verification for Advanced Reasoning”。 OpenAI o1、o3 和 DeepSeek R1 等推理 LLM 在数学和编码方面取得重大进展&#xff0c;但仍发现 IMO 组合问题…...

深入理解 MySQL 8 C++ 源码:SELECT MOD(MONTH(NOW()), 2) 的函数执行过程

MySQL 作为最流行的关系型数据库之一&#xff0c;其内部实现机制一直是开发者探索的热点。本文将以一条简单的 SQL 查询 SELECT MOD(MONTH(NOW()), 2) 为例&#xff0c;深入分析 MySQL 8 源码中内置函数 MOD、MONTH 和 NOW 的执行过程&#xff0c;揭示其底层实现逻辑。 一、SQL…...

清华大学:DeepSeek与AI幻觉(31页PDF)

PDF深入探讨了AI幻觉的概念、原因、评测方法及其实用应用&#xff0c;特别是在金融领域的具体案例。首先介绍了AI幻觉的定义&#xff0c;主要包括数据偏差、泛化困境、知识固化和意图误解四种情况&#xff0c;以及这些因素导致AI产出不合理结果的原因。随后&#xff0c;通过音乐…...

AWS云从业者认证题库 AWS Cloud Practitioner(2.21)

题库持续更新&#xff0c;上方二维码查看完整题库&#xff01; 公司希望减少开发人员用于运行代码的物理计算资源,通过启用无服务器架构&#xff0c;哪种服务可以满足该需求? A&#xff1a; Amazon Elastic Compute Cloud (Amazon EC2) B&#xff1a; AWS Lambda C&#xff1a…...

CompletableFuture 使用和源码解读

引言 CompletableFuture 是 Java 8 引入的一个强大的异步编程工具&#xff0c;用于处理异步操作和处理结果。它实现了 Future 和 CompletionStage 接口&#xff0c;提供了丰富的方法来处理异步任务的完成、组合和异常处理。 CompletableFuture本质是对异步线程的返回值…...

C++与Python:两种编程语言的区别

C和Python都是当今编程领域广泛使用的语言&#xff0c;它们各有特色&#xff0c;适用于不同的开发场景。本文将从语言特性、性能、学习难度、应用领域等多个方面探讨C与Python之间的区别。 一、语言特性 类型系统&#xff1a; C&#xff1a;是一种静态类型语言&#xf…...

网络工程师 (43)IP数据报

前言 IP数据报是互联网传输控制协议&#xff08;Internet Protocol&#xff0c;IP&#xff09;的数据报格式&#xff0c;由首部和数据两部分组成。 一、首部 IP数据报的首部是控制部分&#xff0c;包含了数据报传输和处理所需的各种信息。首部可以分为固定部分和可变部分。 固定…...

京准电钟:水利控制系统网络时间同步设计与应用

京准电钟&#xff1a;水利控制系统网络时间同步设计与应用 京准电钟&#xff1a;水利控制系统网络时间同步设计与应用 引言 在水利工程中&#xff0c;控制系统的高效运行依赖于精准的时间同步。水电站、泵站、闸门控制、水文监测等子系统的协同作业需要毫秒甚至微秒级的时间…...

QML 实现一个动态的启动界面

QML 实现一个动态的启动界面 一、效果查看二、源码分享三、所用到的资源下载 一、效果查看 二、源码分享 工程结构 main.qml import QtQuick import QtQuick.Controls import QtQuick.Dialogs import Qt.labs.platformWindow {id:windowwidth: 640height: 400visible: truetit…...

伪404兼容huawei生效显示404

根据上述思考&#xff0c;以下是详细的中文分步说明&#xff1a; --- **步骤 1&#xff1a;获取目标设备的User-Agent信息** 首先&#xff0c;我们需要收集目标设备的User-Agent字符串&#xff0c;包括&#xff1a; 1. **iPhone设备的User-Agent**&#xff1a; Mozi…...

程序代码篇---Python指明函数参数类型

文章目录 前言简介一、函数参数的类型指定1. 基本类型提示2. 默认参数3. 可变参数4. 联合类型&#xff08;Union&#xff09;5. 可选类型&#xff08;Optional&#xff09;6. 复杂类型 二、返回值的类型指定1. 基本返回类型2. 无返回值&#xff08;None&#xff09;3. 返回多个…...

【论文阅读】SAM-CP:将SAM与组合提示结合起来的多功能分割

导言 近年来&#xff0c;视觉基础模型的快速发展推动了多模态理解的进步&#xff0c;尤其是在图像分割任务中。例如&#xff0c;Segment Anything模型&#xff08;SAM&#xff09;在图像Mask分割上表现出色&#xff0c;但在语义及实例分割方面仍存在局限。本文提出的SAM-CP&am…...

ecovadis社会企业责任认证

EcoVadis 是一家全球性的企业社会责任 (CSR) 评级机构&#xff0c;旨在通过评估企业在环境、劳工与人权、商业道德和可持续采购等方面的表现&#xff0c;帮助提升其可持续性和社会责任实践。 EcoVadis 认证的核心内容 环境 评估企业在能源消耗、碳排放、废物管理等方面的表现。…...

机器视觉3D中,深度图与点云图数据对比分析

在机器视觉3D中,深度图(Depth Map)和点云图(Point Cloud)是两种不同的数据表示形式,主要区别如下: 数据维度与结构 深度图 二维矩阵:每个像素存储对应场景中某一点的深度值(即到相机的距离)。 坐标系:基于图像坐标系(2D),每个像素的坐标是 (u, v),对应的深度值为…...

逻辑架构与软件架构在PREEvision中的设计关系

1 Introduction 在如今汽车电子系统的开发过程中&#xff0c;系统架构设计是至关重要的环节。无论是汽车控制系统、信息娱乐系统&#xff0c;还是电动驱动系统&#xff0c;架构设计都决定了整个系统的功能、性能以及后期的可维护性和可扩展性。 在往期文章中&#xff0c;我们…...

机器学习和深度神经网络 参数调参数 太麻烦,非常费时间怎么办,用自动化超参数优化方法

自动化超参数优化方法主要包括以下几种‌&#xff1a; ‌网格搜索&#xff08;Grid Search&#xff09;‌&#xff1a;网格搜索是通过在给定的超参数搜索空间内尝试所有可能的组合&#xff0c;最后找出最优的超参数组合。这种方法虽然直观&#xff0c;但计算成本较高&#xff0…...

武汉火影数字|VR沉浸式空间制作 VR大空间打造

VR沉浸式空间制作是指通过虚拟现实技术创建一个逼真的三维环境&#xff0c;让用户能够沉浸在这个环境中&#xff0c;彷佛置身于一个全新的世界。 也许你会好奇&#xff0c;VR 沉浸式空间究竟是如何将我们带入那奇妙的虚拟世界的呢&#xff1f;这背后&#xff0c;离不开一系列关…...

MQTT的连接配置以及重连机制和遇到的问题--------求如何修改更加好

今天遇到了一个mqtt的问题&#xff0c;虽然解决了&#xff0c;但是感觉不是很好&#xff0c;希望大家多指点 这是配置文件 customer:mqtt:broker: tcp://ip:1883clientList:- clientId: nays_servicesubscribeTopic: xxxxxx- clientId: receive_servicesubscribeTopic: xxxxx…...

大数据学习之任务流调度系统Azkaban、Superset可视化系统

一.任务流调度系统Azkaban 1.课程介绍 2.为什么需要工作流调度系统 3.AZKABAN是什么 4.AZKABAN下载 5.制作安装包 6.tar包准备 7.MYSQL配置AZKABAN 8.配置EXECUTOR SERVER 9.配置WEBSERVER 10.单作业实战_yaml语言(今天稍晚更新) 11.单作业实战 12.多作业依赖实战 13.失败自动重…...

在VS-qt的程序中,后期增加PCH预编译功能,提高编译速度

由于前期创建qt程序的时候未勾选pch功能,导致没有启动预编译的功能. 这种情况下需要增加pch功能应该怎么做? 在项目中增加2个文件 stdafx.h和stdafx.cpp文件 stdafx.h增加qt常用头文件 #pragma once //windows #include <windows.h>//qt常用 #include <QObject&g…...

蓝桥云客 路径之谜

11.路径之谜 - 蓝桥云课 路径之谜 题目描述 小明冒充X星球的骑士&#xff0c;进入了一个奇怪的城堡。 城堡里边什么都没有&#xff0c;只有方形石头铺成的地面。 假设城堡地面是nn个方格。如下图所示。 按习俗&#xff0c;骑士要从西北角走到东南角。可以横向或纵向移动&…...

ES6相关操作

一.JavaScript的基础语法 1.Demo1.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>JavaScrip…...

在Linux上创建一个Docker容器并在其中执行Python脚本

在Linux上创建一个Docker容器并在其中执行Python脚本的过程&#xff0c;涉及多个方面的内容&#xff0c;包括安装Docker、编写Dockerfile、构建镜像、运行容器等。 1. 安装Docker 在Linux上使用Docker之前&#xff0c;你需要确保系统已安装Docker。Docker支持的Linux发行版有…...

Ubuntu 下 nginx-1.24.0 源码分析 - ngx_os_init 函数

ngx_os_init 声明在 src/os/unix/ngx_os.h ngx_int_t ngx_os_init(ngx_log_t *log); 定义在 src\os\unix\ngx_posix_init.c ngx_int_t ngx_os_init(ngx_log_t *log) {ngx_time_t *tp;ngx_uint_t n; #if (NGX_HAVE_LEVEL1_DCACHE_LINESIZE)long size; #endif#if (NGX…...