API Architectural Styles 整理及认知

API Architectural Styles 整理及认知
Diebug首先要介绍一个概念: Architectural Styles for APIs
API 也有不同的标准,这个标准按照时间线来表述就如下图所示,离现在 2022
年最近的一个标准是 gRPC。 虽说有这么多的 API
标准,但是最重要的几个标准分别为: SOAP, REST and RPC。
这几个标准之间的区别看下图:
请大家不要以这个时间来判断什么 API
标准会比较好,我之前也犯过这种错,每种技术有不同的使用场景,也要看每家公司的情况来,我和小伙伴讨论,现在公司用的最多的是
REST REST – REpresentational State Transfer 直接翻译:表现层状态转移
RESTful 可以通过一套统一的接口为 Web,iOS 和 Android 提供服务。
我现在暂且认为 REST 和 RESTful
是一个意思,如果再发现区别,我再过来修改。 第二个概念是:REST API 接口
参考:https://www.redhat.com/zh/topics/api/what-is-a-rest-api REST
是一组架构规范,并非协议或标准。API 开发人员可以采用各种方式实施 REST。
有空再来写具体的实现细节。 第三个是 RESTful 有一些其他的 API RESTful
下面的子集(SwaggernodeopenAPI) 第四个是 K8S 用的是什么 API
https://kubernetes.io/zh/docs/concepts/overview/kubernetes-api/
我在官网查到的记录是 OpenAPI V2 or OpenAPI V3 规范设计
https://kubernetes.io/zh/docs/reference/using-api/api-concepts/