# 缓存 API 响应

URL: https://caijiao.org/memcached/05-scenarios/02-api-cache
Source: docs/memcached/05-scenarios/02-api-cache.md
Description: 本章节介绍如何使用 Memcached 缓存 API 响应，减轻后端压力，提升接口响应速度，实现高效的数据服务。

API 请求频繁访问同一数据时，缓存其响应结果可以显著提升系统性能。

## 工作流程

1. 接收到 API 请求后，先查询 Memcached 是否有对应缓存。  
2. 若缓存存在，直接返回缓存数据，减少后端计算。  
3. 若缓存不存在，调用后端服务获取数据，写入缓存并返回。

## 示例流程

```txt
cacheKey = "api:/users/1001"
response = memcached.get(cacheKey)
if response == null:
    response = callBackendApi("/users/1001")
    memcached.set(cacheKey, response, 300)  # 缓存5分钟
return response
````

## 注意事项

* 根据 API 特性合理设置缓存过期时间。
* 处理缓存失效时的并发访问，避免缓存击穿。
* 对动态数据慎用缓存，避免数据不一致。

通过缓存 API 响应，能够提升系统吞吐量和用户体验。
