所有文章 > 当前分类:API设计
15 个REST API 设计的基本技巧
15 个REST API 设计的基本技巧
2024/12/19
REST API 是最常见的 Web 服务类型之一,但它们也很难设计。它们允许各种客户端(包括浏览器、桌面应用程序、移动应用程序以及基本上任何具有互联网连接的设备)与服务器进行通信。因此,正确设计 REST API 非常重要,这样我们就不会...
用 AWS Smithy 构建下一代 API 服务
用 AWS Smithy 构建下一代 API 服务
【API设计】 自动化代码生成这种能减少工作量的事情一直是程序员们的最爱。如果某些代码片段不断重复自身,我们会用宏替换来减少这种重复,但如果涉及到大规模,架构级别的重复,那么我们倾向于用代码生成来解决这种重复。日常工作中,大家使用得比较多的代码生成工具有 ...
2024/12/19
分布式系统核心:REST风格的架构,REST成熟度模型及REST API管理
分布式系统核心:REST风格的架构,REST成熟度模型及REST API管理
【API设计】 ◆ 成熟度模型 正确、完整地使用REST是困难的,关键在于RoyFielding所定义的REST只是一种架构风格,它并不是规范,所以也就缺乏可以直接参考的依据。好在Leonard Richardson补充了这方面的不足。 他提出...
2024/12/19
API的性能约定
API的性能约定
【API设计】 当今,任何软件系统都依赖于其他人的工作,可以参考《没有被了解的API?一个老码农眼中的API世界》。当然,我们写了一些代码,通过API调用操作系统和各种软件包中的函数,从而减少了代码量。随着分布式系统的日益普遍,我们的软件系统通过网络与服务...
2024/12/19
IOT语义互操作性之API接口
IOT语义互操作性之API接口
【API设计】 这个系列文章描述了一个单一的语义数据模型来支持物联网和建筑、企业和消费者的数据转换。 这种模型必须简单可扩展, 以便能够在各行业领域之间实现插件化和互操作性。 对于一个目前从事智能硬件的老码农,觉得这些文字具有积极的参考意义。这一部分讨论通...
2024/12/19
没有被了解的API?一个老码农眼中的API世界
没有被了解的API?一个老码农眼中的API世界
【API设计】 即便做了20多年的软件开发,仍然发现自己经常会低估完成一个特定的编程任务所需要的时间。有时,错误的时间表是由于自己的能力不足造成的: 当深入研究一个问题时,会发现它比最初想象的要难得多,因此解决这个问题需要更长的时间ーー这就是程序员的生活。...
2024/12/19
浅谈四种API设计风格(RPC、REST、GraphQL、服务端驱动)
浅谈四种API设计风格(RPC、REST、GraphQL、服务端驱动)
【API设计】 Web API设计其实是一个挺重要的设计话题,许多公司都会有公司层面的Web API设计规范,几乎所有的项目在详细设计阶段都会进行API设计,项目开发后都会有一份API文档供测试和联调。本文尝试根据自己的理解总结一下目前常见的四种API设计...
2024/12/19
API 的三种类型:REST、GraphQL 和异步 API 的优缺点分析
API 的三种类型:REST、GraphQL 和异步 API 的优缺点分析
【API设计】 导读:在这份学习指南中,我们将和大家一起了解 REST、GraphQL 和异步 API 的优缺点,以及这三种技术在现实生活中的理想用例。 API 在现代软件开发领域在发挥着举足轻重的作用。 目前,有三种主流类型的API,...
2024/12/15
大规模分布式架构中,怎样设计和选择 API 限流技术?
大规模分布式架构中,怎样设计和选择 API 限流技术?
【API设计】 一、为什么需要限流 我们为什么需要限流?相信你在设计所有系统的时候,都会首先问自己这样一个问题。API 限流需要解决的问题 之所以会有限流这个问题,是因为我们生活在一个资源有限的社会当中,当资源供不应求的时候,就会引发一...
2024/12/15
前端 api 请求缓存方案
前端 api 请求缓存方案
【API设计】 在开发 web 应用程序时,性能都是必不可少的话题。对于webpack打包的单页面应用程序而言,我们可以采用很多方式来对性能进行优化,比方说 tree-shaking、模块懒加载、利用 extrens 网络cdn 加速这些常规的优化。甚至在...
2024/12/13
接口优化的几个技巧
接口优化的几个技巧
【API设计】 当越来越多对性能的吐槽反馈到我们这里的时候,我们意识到,接口性能的问题的优先级必须提高了。然后我们就跟踪了1周的接口性能监控,这个时候我们的心情是这样的: 有20多个慢接口,5个接口响应时间超过5s,1个超过10s,其余的都在...
2024/12/13
如何打造PHP的Restful API自动化监控系统?
如何打造PHP的Restful API自动化监控系统?
【API设计】 背景 伴随租房业务的不断发展,租房各个子业务系统的集群数量也迎来了一波增长,提供的API接口数量和服务数量也有了井喷式增长,但在业务层自动化监控方面我们却缺失统一的工具平台,随之而来我们开发同学会经常碰到这些问题: 1. 有哪些...
2024/12/13
实用 Web API 规范
实用 Web API 规范
【API设计】 当开始创建一个新系统,或参与一个新团队或项目时,都会面临一个简单却深刻的问题:这个系统(Web Server)的 API 是否有设计规范? pyramid image by stable difussion, promp...
2024/12/11
四种主流的API风格介绍与对比
四种主流的API风格介绍与对比
【API设计】 一、引言 API(Application Programming Interface)是现代软件的构建块之一,它允许不同的应用程序之间进行通信和协作,进而使得开发者能够创建出更为动态、灵活且具有扩展性的软件。随着互联网技术的不断发展,...
2024/12/09
掌握 API 生命周期:基本阶段和行之有效的成功策略
掌握 API 生命周期:基本阶段和行之有效的成功策略
【API设计】 什么决定了 API 的成功?其中很重要的一点是掌握 API 生命周期 — 从规划到退役,每一步都会影响 API 的性能和采用。API 生命周期涉及几个关键阶段 — 规划、设计、开发、部署、使用、监控和退役。每个阶段都决定着 API 的成功实...
2024/12/09
深入解析 GraphQL:APISIX 如何优化 API 管理与路由
深入解析 GraphQL:APISIX 如何优化 API 管理与路由
【API设计】 什么是 GraphQL?它有多流行?​ GraphQL 是一套由 Facebook 在 2015 年发布的一套面向 API 的查询操作语言。相比于其他的 API 设计方式,GraphQL 允许客户端根据事先约定的数据结构组建查询语句,...
2024/12/06
1 6 7 8 9 10 16