# rpc 错误：代码 = Unavailable 描述 = 传输正在关闭

- **ID:** `go/grpc-connection-reset`
- **领域:** go
- **类别:** network_error
- **验证级别:** ai_generated
- **修复率:** 80%

## 根因

gRPC 连接在调用进行中关闭，通常由于服务器关闭或网络问题。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| 1.10 | active | — | — |

## 解决方案

1. **** (70% 成功率)
   ```
   for i := 0; i < 3; i++ { err := client.Call(ctx, req); if err == nil { break }; time.Sleep(time.Duration(i)*time.Second) }
   ```
2. **** (90% 成功率)
   ```
   conn, _ := grpc.Dial("addr", grpc.WithInsecure()); client := pb.NewClient(conn)
   ```

## 无效尝试

- **** — If the server is down, retry will fail again. (80% 失败率)
- **** — Keepalive doesn't prevent abrupt connection resets. (60% 失败率)
