Go网络编程基础

在前一章中,我们讨论了使用benchmark函数对Go代码进行性能测试、如何为Go代码编写单元测试、示例函数的编写、交叉编译和Go代码的调优,以及如何生成Go代码的文档。

本章主要介绍Go语言的网络编程,包括如何创建Web应用程序,并使其可以在计算机网络或互联网上运行。在下一章则介绍如何开发TCP和UDP的应用程序。

为了顺利地完成本章和下一章的内容,本章还介绍一些关于HTTP协议、网络以及网络工作原理的知识。

在这一章中,将学习以下主题:

  • TCP/IP简介及其重要性
  • IPv4和IPv6相关协议
  • 命令行工具netcat
  • 在Go中实现DNS查询
  • net/http包简介
  • http.Responsehttp.Requesthttp.Transport结构简介
  • 使用Go创建Web服务器
  • 使用Go进行Web客户端编程
  • 使用Go创建网站
  • http.NewServeMux类型介绍
  • Wiresharktshark介绍
  • HTTP连接的超时处理(客户端和服务端)

对于本章介绍的一些底层知识相对独立,可以跳过学习——在需要的时候可以重新复习这些内容。