计算机基础导论¶
本课程是整套 Golang 后端工程师教材的入口。它不急着讲 Go 语法,也不急着写接口,而是先帮学习者建立几个关键问题的答案:
- 后端工程师到底在负责什么?
- 一个后端服务是如何运行起来的?
- 浏览器发出一个请求后,数据经历了哪些系统组件?
- CPU、内存、磁盘、网络和数据库分别在后端系统中扮演什么角色?
- 为什么高级工程师不能只会写业务代码?
学习目标¶
学完本课程后,学习者应该能够:
- 说清楚后端工程师的工作边界和责任。
- 理解一个 Web 请求从客户端到服务端的完整路径。
- 建立对 CPU、内存、磁盘、网络、操作系统、数据库的整体认知。
- 理解服务端程序的基本运行模型:启动、监听、处理请求、访问依赖、返回响应。
- 初步具备排查问题的意识:慢、卡、失败、超时、资源不足,都不是凭感觉猜。
课程结构¶
建议按下面顺序学习:
为什么先学这一章¶
很多新手一开始会直接进入语法、框架、数据库,但很快会遇到一些看似零散的问题:
- 为什么接口有时候会超时?
- 为什么数据库慢查询会拖垮服务?
- 为什么连接池配置不合理会导致服务卡住?
- 为什么 Docker 里程序能跑,但访问不到?
- 为什么线上 CPU 飙高、内存上涨、日志打不出来?
这些问题表面上属于 Go、数据库、网络或运维,底层其实都和计算机基础有关。
本课程的目的不是把操作系统、网络、数据库一次性讲深,而是先建立一张地图。后续学习 Go、Web、数据库、Docker、Kubernetes、分布式和线上排障时,学习者能知道每个知识点在地图上的位置。
学习方式¶
- 第一遍只要求建立整体认知,不需要背概念。
- 每看到一个系统组件,都要问:它解决什么问题?如果它出问题,会有什么现象?
- 遇到命令行、HTTP、进程、端口、日志这些内容,要动手验证。
- 本章内容会在后续操作系统、计算机网络、工程化和云原生章节中继续加深。
学习提醒
新手最重要的不是一开始知道所有细节,而是先形成正确的工程直觉:服务不是孤立运行的,它总是在 CPU、内存、磁盘、网络、操作系统、数据库和其他服务共同组成的环境里运行。