API设计指南

     

fury:由jit和零拷贝支持的超快序列化框架

841 3K

阿里alipay的Fury是一个极快的多语言序列化框架,由jit(即时编译)和零拷贝提供支持,提供高达 170 倍的性能和终极易用性。仅用于序列化通过使用fury将Java对象转换为字节流,您可以获得.

Stripe的API实战设计模式 - Paul

742 8K

在这里介绍了一些API设计模式,这些模式足够通用,对 API 设计过程中的几乎任何人都有用。语言给事物命名是很困难的。计算机科学中的大多数事情都是如此,API 设计也不例外。这里的问题是,与变量和函数.

使用WunderGraph构建前后端BFF的7个技巧

377 5K

前端后端 (BFF) 是一种专门的服务器端 API,充当前端(客户端)应用程序和各种下游 API 之间的中介,在将数据传递到前端之前根​​据需要聚合和转换数据。这里有一些关于前端后端的陷阱、提示和技巧.

API调查显示:微服务沦为僵尸API

406

从微服务到僵尸 API 是今年Postman API 状况调查中出现的重要现象。这一现象可能反映出科技行业经济收缩最糟糕的时期。API 的可使用性是一大通点: API 是否一致并且易于设置? 刚开始使.

Clean整洁架构与外部系统集成的验证

421 2K

使用Clean清洁架构注意:请勿将系统直接连接到外部系统!需要通过适配器转换或验证:在企业应用中,我们经常需要与第三方系统集成。例如,如果我们有一个订购系统,我们可能需要将其与企业资源规划系统和快递系.

simdjson-java:快3倍的使用SIMD指令的JSON解析器

768 2K

这是C++的simdjson的 Java 版本: 使用 SIMD 指令的 JSON 解析器,基于Geoff Langdale 和 Daniel Lemire 撰写的每秒解析千兆字节的 JSON论文 。.

Schema驱动API设计

490 2K

Schema 驱动API设计工作流程:将Schema(数据结构或模式)置于开发过程的中心。让”数据结构Schema“成为团队之间沟通的纽带,并创建一个共享框架来理解正在实施的各种系统。Schema本质.

DDD实践中如何设计上下文BC之间的映射关系?

408 5K

如何区分产品基础设施和技术基础设施 : 技术基础架构--不需要构建业务/产品背景,主要由开发人员使用。它不会立即影响用户体验,并且可以包含在一个特定的行会中。 产品基础设施——影响用户体验或有产品需求.

如何选择使用API或消息传递 ?

542 2K

让我们首先看看API,它似乎是最主要的选择:APIAPI定义了允许两个应用程序相互通信的契约。这种契约的形式是服务器承诺提供的协议和样式,而客户应该遵守。API一种主要风格是REST,它在这种面向服务.

基于Http的ETags和If-Modified-Since实现乐观并发性

461 2K

HTTP的特点是ETags和条件性请求,并启用乐观的并发性。ETagETag(又称实体标记entity-tag)解决了 "丢失更新 "的问题,即一个API的两个客户端已经收到了一个实体的版本的数据。但.

如何使用Spring Boot 3.1 SSL?

567 4K

SSL 捆绑包是 Spring Boot 3.1 的一个有用功能。Spring Boot 3.1引入了SSL包的概念,用于配置和消费定制的SSL信任包,如密钥库、证书和私钥。一旦配置好,就可以使用配置.

跨微服务共享公共数据如何实现?

658 1

在微服务设计过程中,经常出现的一个共同点和要求是共享共同数据。而这个问题在微服务之间的异步消息驱动通信(使用Kafka)中变得更加有趣了例如,微服务1有一些数据。微服务2和3想要访问这些数据。我看到了.

GraphQL死了吗?

520

2023年REST、GraphQL、OpenAPI、SOAP、gRPC和tRPC趋势分析今天我注意到/r/webdev上的一个帖子 说明 GraphQL 呈下降趋势。 真的是这样,还是这些数字在骗我们.

如何通过 Java 使用 ChatGPT API ?

2514 5K

ChatGPT作为OpenAI训练的大型语言模型,为自然语言处理任务提供人工智能服务。通过使用 ChatGPT API,开发人员可以将 ChatGPT 模型的功能集成到他们的应用程序中。在本文中,我们.

Spring Boot 的 CORS 支持| baeldung

438

在本文中,我们展示了 Spring 如何为在我们的应用程序中启用 CORS 提供支持。我们从控制器的配置开始。我们看到我们只需要添加注释@CrossOrigin就可以为一个特定的方法或整个控制器启用 .

到底什么是微服务? - Jak

1062 2K

微服务架构将一个应用程序构造成一个小型的、可独立部署的服务集合。每个服务都在自己的进程中运行,并通过HTTP/REST APIs等轻量级机制与其他服务进行通信。与传统的单体架构相比,这种方法有几个优点.

可组合架构 - DZone

1126 1 2K

本文讨论可组合应用程序架构的概念和架构模式。在一个组织中进行软件选择的基本假设已经发生了变化。虽然原则、政策和指导方针是相同的,但在大多数情况下,以下因素对产品、技术和开发的选择有直接影响。 一个组织.

编写令人惊叹的 REST API 的艺术

1020 2K

在编写 API 时,REST(代表性状态传输的缩写)被视为标准。然而,REST 本身实际上并不是一个标准。这使得设计直观的 REST API 变得非常棘手。它是一种思维方式或艺术形式,而不是清单。一致.

语义技术简介

969 5K
想象一个网络,其中所有数据都是用户可以免费使用的节点,并且所有信息都可以通过简单的技术组合在一起。这就是语义网试图实现的。语义技术英国计算机科学家蒂姆·伯纳斯-李 ( Tim Berners-Lee .

API网关与负载均衡器的区别?

1388 2K

让我们从相关术语的定义开始:什么是微服务?微服务是一种软件架构设计模式,在这种模式下,一个大型的应用程序被构建为一套模块化的组件或服务。每个微服务都是一个小的、独立的功能单元,使用明确定义的接口与其他.

Stargate为何使用Quarkus作为API后端框架?

945 2K

本文将介绍为什么 Stargate for Apache Cassandra 选择 Quarkus 而不是 Spring Boot 和 Micronaut 作为他们选择的 Java 框架背后的决策过程.

最小可行产品API的实现 - frankel

1601 1 8K

不写一行代码的情况下,实现最小可行产品API:无需编写 REST API代码,而是配置使用 PostgREST 组件。PostgREST 是一个独立的 Web 服务器,可将您的 PostgreSQL .

管理API安全风险的10大方法

1844 2K

无论API是从无到有还是从第三方来源集成,确保其安全都需要有组织的、积极的端到端可视性。API在软件交付生命周期中占有重要地位,其安全性取决于CI/CD工作流程对API开发的最佳实践的遵循程度。1.A.

使用Golang、PostgreSQL和Docker实现现代API设计

1242

使用 Docker Compose 组织容器并使用 CURL 发出请求。Go 是一种高性能的强大语言,它在语言本身中内置了并发性,使其非常适合微服务。这里我们将制作一个小的 API,重点是理解 HTT.

代码优先与API优先比较 - Xu

1235

代码优先(Code First)是程序员首先开发代码,不进行API设计,代码集成测试发布时。再对API进行测试。API优先(API First)是首先设计API,然后测试API,再进行代码开发。在代码.

书籍推荐:《API 设计模式》

1863 1

为任何领域、技术或平台设计可演变的高质量API的成熟模式本书提供了理论和实践的健康组合,包含了许多深刻的建议,但从未失去大局观......以现实世界的经验为基础,以学术的严谨性和实践者社区的反馈为基础.

如何定义API业务模型? - henriq

1180

作为一个API供应商,你需要一种易于使用和灵活的方式来从你的API中获得收入,这样,只要你的API被使用,你就能获得收入。然而,我们必须澄清的一点是,你不一定会因消费你的API而向用户收费。你的公司可.

API 网关的10个最常见用例

1638 1 6K

这篇文章详细阐述了API 网关(例如Apache APISIX)在构建API-Led Connectivity时最常见的 10 种用法。我们了解不同的解决方案,您可以利用 API Gateway 功能.

Tinder如何使用SpringCloud构建500个微服务的API网关?

1532 1 4K

Tinder如何使用 Spring Cloud Gateway 集中其 500 多个微服务的非常棒的文章:Tinder API网关(TAG)是Tinder的关键框架之一,它解决了暴露公共API和执行严.

oslabs-beta/DacheQL: GraphQL 缓存工具

957

DacheQL能简化 GraphQL 查询的缓存过程,以便开发人员提高其应用程序性能。DacheQL 是一个利用 Redis 和 LRU 驱逐策略的轻量级 GraphQL 缓存工具。GraphQL 是.