AIP-128 声明友好接口

news2025/1/26 14:37:40
编号128
原文链接AIP-128: Declarative-friendly interfaces
状态批准
创建日期2020-10-06
更新日期2020-10-06

许多服务需要与常见的DevOps工具交互,特别是创建和管理可网络寻址资源(如虚拟机、负载均衡器、数据库实例等)的工具。这些工具采用“配置即代码”原则:用户设定一个完整的目标状态,工具负责执行必要的操作,实现用户设定的规范。

这些工具是 声明式 的:不指定具体要执行的操作,而是指定期望的目标。操作是根据当前状态与目标状态之间的差异推导出来的。

此外,流行的DevOps工具数量众多,每年又会出现大量的新工具。将数百种资源类型与多个工具进行集成,需要统一接口,以便自动执行集成工作。

指南

资源

声明友好资源 必须 始终使用标准方法管理资源生命周期,这将允许工具广泛支持这些资源,同时也符合声明友好指南的其他要求(参考进一步阅读)。

声明友好资源 应该 指明其遵守声明友好风格:

message Book {
  option (google.api.resource) = {
    type: "library.googleapis.com/Book"
    pattern: "publishers/{publisher}/books/{book}"
    style: DECLARATIVE_FRIENDLY
  };

  // Name and other fields...
}

协调

如果更新资源需要较长时间(超过几秒),资源 应该 包含一个 bool reconciling 域,告知更改正在进行。这个域 必须 是仅输出的。

如果资源的当前状态与用户预期的状态不一致,并且系统正在协调处理,资源 必须reconciling 域设置为 true ,无论开始协调的根本原因是用户操作或系统动作。

注意: 处理 GET 请求的服务 必须 返回资源的当前状态(而非预期状态)。

进一步阅读

关于声明友好接口存在大量更严格的指南,因为它关注于对资源的自动化操作。下面的列表是其他AIPs中关于声明友好接口指南的汇总:

  • 资源 不应 使用自定义方法:参考AIP-136。
  • 资源 必须 使用 UPDATE 方法处理重复域:参考AIP-144。
  • 资源 必须 包含特定的标准域:参考AIP-148。
  • 资源 必须 具有 etag 域:参考AIP-154。
  • 资源 应该 提供验证更改的方法:参考AIP-163。
  • 资源 不应 实现软删除。如果资源标识不能重复使用,资源 必须 实现软删除和撤销删除RPC:参考AIP-164。

注解

参考AIP-148注解。

修订记录

  • 2023-07-13annotations 移动到AIP-148。
  • 2023-06-17 删除关于平面的定义,移动到AIP-111。
  • 2023-05-11 删除对resource_id域的“必须”要求,该要求已移动到通用的“必须”规范中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2281836.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

996引擎 - 前期准备-配置开发环境

996引擎 - 前期准备 官网搭建服务端、客户端单机搭建 开发环境配置后端开发环境配置环境 前端开发环境配置环境 后端简介前端简介GUILayoutGUIExport 官网 996传奇引擎官网 所有资料从官网首页开始,多探索。 文档: 996M2-服务端Lua 996M2-客户端Lua 搭…

Java程序员如何设计一个高并发系统?

前言 无论是职场新人还是有一定工作经验的老手,系统设计问题都如同悬在头顶的达摩克利斯之剑。对于新人而言,面试时遭遇“如何从零开始设计一个完整系统”的问题,往往让人瞬间大脑一片空白。系统设计的范畴广泛,网络资源难以全面…

RV1126画面质量三:QP调节

一.什么是 QP 调节? QP 参数调节,指的是量化参数调节。它主要是来调节图像的细节,最终达到调节画面质量的作用。QP 值和比特率成反比,QP值越小画面质量越高;反之 QP 值越大,画面质量越低…

渐变颜色怎么调?

渐变颜色的调整是设计中非常重要的一部分,尤其是在创建具有视觉吸引力和深度感的设计作品时。以下是一些在不同设计软件中调整渐变颜色的详细步骤和技巧: 一、Adobe Photoshop 1. 创建渐变 打开渐变工具: 选择工具栏中的“渐变工具”&#x…

Arduino基础入门学习——OLED显示屏的基本使用

Arduino基础入门学习——OLED显示屏的基本使用 一、前言二、准备工作三、基本使用1. OLED显示基本字符 (数字英文基本标点符号)2. OLED显示汉字3. 显示图片 四、 结束语 一、前言 在我们的日常开发中,一般有这么几种方式对数据进行展示&#…

jQuery阶段总结(二维表+思维导图)

引言 经过23天的学习,期间有期末考试,有放假等插曲。本来应该在学校里学习,但是特殊原因,让回家了。但是在家学习的过程,虽然在学,很让我感觉到不一样。但是效果始终还是差点的,本来17、18号左右…

无公网IP 外网访问媒体服务器 Emby

Emby 是一款多媒体服务器软件,用户可以在 Emby 创建自己的个人多媒体娱乐中心,并且可以跨多个设备访问自己的媒体库。它允许用户管理传输自己的媒体内容,比如电影、电视节目、音乐和照片等。 本文将详细的介绍如何利用 Docker 在本地部署 Emb…

PAT甲级-1022 Digital Libiary

题目 题目大意 一个图书有图书id,书名,作者,关键字,出版商,出版时间6个信息。现要查询图书的ID,1对应通过书名查询,2对应作者,3对应关键字(不需要完全一致,包…

OpenCV:在图像中添加高斯噪声、胡椒噪声

目录 在图像中添加高斯噪声 高斯噪声的特性 添加高斯噪声的实现 给图像添加胡椒噪声 实现胡椒噪声的步骤 相关阅读 OpenCV:图像处理中的低通滤波-CSDN博客 OpenCV:高通滤波之索贝尔、沙尔和拉普拉斯-CSDN博客 OpenCV:图像滤波、卷积与…

二叉树的存储(下)c++

链式存储 我们可以创建两个数组L[N]、r[N]&#xff0c;分别存储i 号结点的左右孩子的编号&#xff0c;这样就可以通过数组下标实现链式访问。 本质上还是孩子表示法&#xff0c;存储的是左右孩子的信息 #include <iostream>using namespace std;const int N 1e6 10; …

回归预测 | MATLAB基于TCN-BiGRU时间卷积神经网络结合双向门控循环单元多输入单输出回归预测

效果一览 基本介绍 回归预测 | MATLAB基于TCN-BiGRU时间卷积神经网络结合双向门控循环单元多输入单输出回归预测 一、引言 1.1、研究背景及意义 在当今数据驱动的时代&#xff0c;时间序列预测已成为金融、气象、工业控制等多个领域的关键技术。随着人工智能和机器学习技术的…

如何获取小程序的code在uniapp开发中

如何获取小程序的code在uniapp开发中&#xff0c;也就是本地环境&#xff0c;微信开发者工具中获取code&#xff0c;这里的操作是页面一进入就获取code登录&#xff0c;没有登录页面的交互&#xff0c;所以写在了APP.vue中&#xff0c;也就是小程序一打开就获取用户的code APP.…

BGP边界网关协议(Border Gateway Protocol)路由聚合详解

一、路由聚合 1、意义 在大规模的网络中&#xff0c;BGP路由表十分庞大&#xff0c;给设备造成了很大的负担&#xff0c;同时使发生路由振荡的几率也大大增加&#xff0c;影响网络的稳定性。 路由聚合是将多条路由合并的机制&#xff0c;它通过只向对等体发送聚合后的路由而…

《用DOTS解决实际需求》集锦

去年作者发布了一篇《DOTS-ECS系列课程》&#xff0c;深受同学们的好评&#xff01;前期课程是基于0.51版本录制的&#xff0c;DOTS升级至1.0版本后&#xff0c;同学们纷纷希望能使用DOTS 1.0版本录制实战课程。 今年作者带着DOTS 1.0版本的实战课程回来啦&#xff01;&#x…

pycharm 运行远程环境问题 Error:Failed to prepare environment.

问题排查 拿到更详细的报错信息&#xff1a; Help > Diagnostic Tools > Debug Log Settings section: 添加下面的配置 com.intellij.execution.configurations.GeneralCommandLine 重显报错&#xff0c;我这里是再次运行代码打开 Help | Collect Logs and Diagnosti…

11、性能测试及监控Nginx动静分离配置

1、Jconsole使用 1、win cmd窗口输入jconsole打开工具 选择需要监控的应用程序&#xff0c;点击连接即可进行监控 2、jvisualvm监控工具 1、cmd控制台输入jvisualvm打开工具 运行&#xff1a;正在运行的 休眠&#xff1a;sleep 等待&#xff1a;wait 驻留&#xff1a;线…

流行的开源高性能数据同步工具 - Apache SeaTunnel 整体架构运行原理

概述 背景 数据集成在现代企业的数据治理和决策支持中扮演着至关重要的角色。随着数据源的多样化和数据量的迅速增长&#xff0c;企业需要具备强大的数据集成能力来高效地处理和分析数据。SeaTunnel通过其高度可扩展和灵活的架构&#xff0c;帮助企业快速实现多源数据的采集、…

【Address Overfitting】解决过拟合的三种方法

目录 1. 收集更多数据实践方法&#xff1a;适用场景&#xff1a;优缺点&#xff1a; 2. 特征选择方法介绍&#xff1a;实践示例&#xff1a;适用场景&#xff1a;优缺点&#xff1a; 3. 正则化&#xff08;Regularization&#xff09;正则化类型&#xff1a;实践示例&#xff1…

机器人SLAM建图与自主导航

前言 这篇文章我开始和大家一起探讨机器人SLAM建图与自主导航 &#xff0c;在前面的内容中&#xff0c;我们介绍了差速轮式机器人的概念及应用&#xff0c;谈到了使用Gazebo平台搭建仿真环境的教程&#xff0c;主要是利用gmapping slam算法&#xff0c;生成一张二维的仿真环境…

士的宁(strychnine)的生物合成-文献精读104

Biosynthesis of strychnine 士的宁&#xff08;strychnine&#xff09; 又名 番木鳖碱 的生物合成 摘要 士的宁&#xff08;番木鳖碱&#xff09;是一种天然产物&#xff0c;通过分离、结构阐明和合成努力&#xff0c;塑造了有机化学领域。目前&#xff0c;士的宁因其强大的…