5

1. 写在最前面

1.1 不会涉及的内容

  • 这里不会有Linux系统装机过程介绍

  • 这里不会有Linux操作系统的详细介绍

  • 这里不会有Linux繁多的运维操作介绍

1.2 专注的内容

  • 这里有Linux研发实战的经验分享,帮你避过前人踩过的坑

  • 这里有Linux研发技术要点和核心概念的详细讲解

  • 这里有Linux研发涉及的最实用的操作和命令的最小集,能满足90%以上的需求

1.3 为什么这么安排

  • Linux操作系统简单了解一下即可,不必浪费过多的精力

  • 虽然会略过一些细枝末节的知识点,但核心概念和技术知识点必须吃透

  • Linux命令和选项那么多,最实用最常用的也就那么几个,没必要记那么多浪费脑力,掌握最核心即可

1.4 为什么写这个系列的文章

  • 帮助对Linux C/C++后端研发感兴趣的后来者快速入门,建立信心,提高学习效率,降低学习门槛

  • 整理自己工作这么多年来的知识技术体系,将技术进一步内化和巩固,也挑战一下自己

1.5 你将会学到什么

为大家展示如何一步一步构建一个真正的Linux后端集群服务,记录一个“Linux C/C++后端研发菜鸟成长记”。

  • 从开发运行环境搭建 到 后端程序的运行机制

  • 从后端程序的运行机制 再到 网络编程

  • 从网络编程 再到 知名的http协议,json

  • 从http协议详细解析 再到 自定义自己的应用层协议

  • 从自定义的应用层协议 再到 数据库持久层

  • 从数据库持久层 再到 分布式缓存

  • 将各个部分串联起来,搭建一个后端服务集群

1.6 你学习前需要具备的

  • c/c++语言基础

  • 掌握计算机基本概念

  • 坚持不懈的心态,因为前期可能会很枯燥

2. 入门

2.1 里程碑

  • 完成开发运行环境搭建

  • 编写以一个Linux程序并运行

  • 初步了解Linux下的进程模型

2.2 Linux是什么?

  • 免费,开源,支持多用户多任务,性能稳定的网络操作系统

  • 是目前后端服务部署的首选服务器,在服务端应用广泛

  • Linux存在着许多不同的Linux版本,但它们都使用了Linux内核

2.3 后端研发是什么?

  • 对外提供网络服务,包括B端(浏览器)和C端(APP或者PC应用),故经常听到的B/S,C/S中的S(Server)就是指后端,后端研发也可以叫服务端研发,最常见的比如http服务,一些开放平台通过http服务对外提供快递查询,股票查询,天气查询等的网络服务

  • 后端对外看来可能就是一个网络服务而已,其实不然,后端在为大规模(千万或者亿级别)用户提供服务时,要整合大量的服务器资源对外提供高可用高并发的服务,非常考验编码,设计和架构能力,这些能力也不是一蹴而就,必须经过工程项目的历练和洗礼

2.3 开发环境与工具准备

2.3.1 云服务器

推荐使用云服务器来做开发环境,主要是基于以下几点考虑

  • 云服务器大行其道,很多热门的app的服务端也都是部署在云上,在开发过程中可以顺便熟悉云环境

  • 没必要在自己的电脑上装虚拟机,然后再在虚拟机上安装一个Linux的操作系统,浪费时间精力不说,不顺利的话还可能带来不小的挫败感,心生退却之心

  • 云服务器不贵,大的云服务厂商为了争夺用户对大学生推出了很多优惠政策,腾讯云甚至一年只要12块,撸一台来学习何乐而不为呢

  • 云服务器网络和配置都是完善的,能让我们从繁琐的配置和系统维护抽离出来,专注于研发

2.3.2 购买云服务器

我们这里选择腾讯云作为我们的云服务器,因为已经毕业,故申请不了一年12块的云服务器,下面简略图解一下购买过程。

  • 登录腾讯云主页然后进入免费体验馆,选择“云服务CVM入门级”

clipboard.png

  • 操作系统和版本的选择

clipboard.png

  • 成功申请到云服务器,整个流程很快,赞腾讯云体验一个

clipboard.png

2.3.3 xshell

  • 云服务器我们已经有了那么我们现在如何操作它呢?这么我们使用免费的支持SSH远程登录的客户端软件xshell,大家可以自行去网络上下载

  • 我们成功申请到云服务后腾讯云会把云服务其的公网ip,内网ip,root密码在腾讯云web管理中心通过内部通知消息发给我们,在那里有我们使用xshell登录云服务器需要的信息(公网ip,root密码)

clipboard.png

  • 使用xshell登录腾讯云云服务器,打开xshell后选择“文件”这个选项卡下的“新建”,这时会弹出一个新建会话属性对话框,把公网ip和root密码信息分别填入

clipboard.png

clipboard.png

  • 选择会话并连接云服务器

clipboard.png

  • yeah!终于连上云服务器了,万里长征迈出了第一步

clipboard.png

2.3.4 xftp

  • 作为开发环境我们肯定需要上下传一些代码或者文件,这时候就需要xftp出场了,xftp是一款支持sftp协议上下传文件的优秀客户端,大家可以自行在网络上下载安装

  • 打开xftp,选择“文件”选项卡中的“新建”,输入云服务器公网ip,用户名,密码

clipboard.png

  • 连接云服务器

clipboard.png

  • yeah!可以在本机和云服务器之间上下传文件了

clipboard.png

2.3.5 代码编写工具

正所谓工欲善其事必先利其器,编写代码的IDE用自己平时顺手的即可,并无特别的要求,在window上常用的IDE有source insight,visual studio,sublime,MinGW Developer Studio等。

下一节 :后端研发菜鸟成长记 第一章 入门 之 "存活下来"

后端研发菜鸟成长记交流QQ群:624888925


后端开发工程实践
1k 声望98 粉丝

资深的后端研发工程师,在后端研发领域深耕10多年。曾在腾讯、字节跳动等知名公司从互联网商业化服务中台等领域的工作。