TCP 服务端
概念说明
TCP 是面向连接的传输协议。
服务端通常先监听一个地址和端口,然后等待客户端连接。
每个连接都可以看作一个 net.Conn。
服务端从连接中读取客户端数据,再把响应写回连接。
语法/规则
- 使用
net.Listen("tcp", address)监听 TCP 地址。 - 使用
listener.Accept()等待客户端连接。 - 使用
conn.Read(buffer)读取客户端数据。 - 使用
conn.Write(data)写回响应。 - 每个连接处理结束后要关闭
conn。 - 服务端通常用 goroutine 处理每个客户端连接。
TCP 服务端示例
| |
运行结果:
| |
常见错误
- 服务端启动后没有一直等待连接,导致程序立即退出。
- 读取数据时直接使用整个 buffer,导致混入未写入的空字节。
- 忘记关闭连接,长时间运行后可能造成资源泄漏。
- 服务端和客户端地址、端口不一致,导致连接失败。