终于弄懂了后端是怎么给前端接口以及开发流程的

55 阅读9分钟

后端架构与服务器部署全流程学习指南

文档说明

本文档基于后端架构与服务器部署培训内容整理,聚焦前后端项目部署、各项配置、Linux服务器操作核心知识点,从基础架构选型、开发逻辑,到实战部署、配置细节全拆解,适配零基础快速上手,同时明确后续学习重点,助力完整掌握项目从本地到线上的全链路部署能力。

一、基础设施与架构选型基础认知

1.1 云服务器选型与核心配置

1.1.1 服务器配置推荐

针对微服务项目部署,优先选择华北乌兰察布地域高性价比云服务器,基础配置标准:

• 硬件配置:8核16G内存、40G系统硬盘、5M带宽,满足微服务多模块运行与基础并发需求

• 操作系统:首选CentOS(Linux发行版) ,拒绝Windows服务器

• 选型原因:Linux系统更贴近机器底层,无冗余图形界面,资源占用低、稳定性强、安全性高,适合后端服务长期运行;Windows侧重图形化操作,服务器运维成本高、性能损耗大,不适合生产环境部署。

1.1.2 域名与服务器关联逻辑

• 服务器本质:对外暴露IP地址+端口,用户可通过IP直接访问,但记忆难度大、不规范

• 域名作用:替代复杂IP,实现便捷访问,域名必须单独购买并完成工信部备案,未备案域名无法正常解析访问

• 关联流程:购买域名→完成备案→域名解析到服务器公网IP→配置Nginx实现域名指向项目

1.1.3 服务器基础认知

服务器是项目运行的核心载体,云服务器无需自建物理机房,省去硬件维护、网络防护等繁琐工作,直接通过远程工具操控,是中小型项目部署的最优选择。

1.2 微服务架构核心优势

微服务是当下主流后端架构,将传统单体应用拆分为多个独立、可单独部署的服务模块,核心优势如下:

1. 解耦与容错性:拆分订单、支付、商品、竞价等独立服务,多人可并行开发;单一服务宕机,不会影响其他服务正常运行,大幅提升系统稳定性。

2. 负载均衡能力:通过服务网关分发请求,将高并发流量分摊至多台服务器,避免单台服务器压力过载导致崩溃,适配用户量增长后的高并发场景。

3. 灵活扩展性:可针对单一服务单独升级、扩容,无需改动整个项目,适配业务迭代需求。

1.3 服务器安全运维核心准则

1. 杜绝文件上传漏洞:严禁将用户上传的图片、文档等文件直接存储在项目服务器本地,恶意文件(木马、病毒)伪装后入侵,会导致服务器被攻击、域名封禁、数据泄露。

○ 解决方案:使用云存储(OSS、COS)存放用户上传文件,实现文件与项目服务器隔离。

2. 优先选择云服务:对比自建机房,云服务器厂商已完成网络安全、硬件维护、数据备份等基础保障,大幅降低运维成本与技术门槛。

3. 做好权限管控:严格限制服务器登录权限、数据库访问权限,避免非法操作。

二、后端开发核心逻辑(部署前置知识)

后端项目是前后端联调的核心,需先理清开发分层逻辑,才能顺利完成部署配置,基于若依框架的后端开发分为三层核心结构:

2.1 Controller层(接口控制层)

• 核心职责:仅负责接收前端请求、返回响应数据,不处理复杂业务逻辑

• 关键配置:通过@RestController注解声明控制类,@RequestMapping注解定义接口请求路径

• 请求处理:通过Request对象获取前端请求头(Header)中的Token,解析登录用户身份信息

2.2 Service层(业务逻辑层)

• 核心职责:处理项目所有核心业务逻辑,是后端开发的核心环节

• 核心工作:字段非空校验、用户权限验证、登录态判断、数据逻辑处理等

• Token验证:通过Redis缓存存储用户登录态,实现快速身份校验,减少数据库查询压力,提升接口响应速度

2.3 Mapper层(数据持久层)

• 核心职责:实现后端代码与数据库的交互,完成数据增删改查

• 技术实现:基于MyBatis框架,通过驼峰命名映射,将Java实体类与MySQL数据库表字段一一对应

• 执行方式:通过XML文件或注解编写SQL语句,实现数据持久化存储与读取

2.4 后端开发核心依赖

• 运行环境:必须安装JDK(Java开发工具包),否则项目无法启动

• 数据库:采用MySQL,通过application.yml配置文件,配置数据库连接地址、端口、账号、密码,建立项目与数据库的连接

• 项目打包:最终将项目打包为Jar包,用于Linux服务器部署

三、Linux服务器基础操作(部署必备)

3.1 服务器远程连接

• 核心工具:FinalShell(免费、易用,推荐新手)、XShell

• 连接方式:通过服务器公网IP、端口(默认22)、服务器账号密码,建立远程连接

• 操作逻辑:连接成功后,通过Linux命令行执行文件上传、目录创建、服务启动等操作

3.2 Linux基础必备命令

1. 文件目录操作:mkdir(创建文件夹)、cd(切换目录)、ls(查看目录文件)、rm(删除文件/文件夹)

2. 进程操作:ps(查看运行进程)、kill(关闭进程)、nohup(后台运行项目,关闭终端不停止)

3. 权限操作:chmod(修改文件权限)、chown(修改文件归属)

4. 日志查看:tail(实时查看项目运行日志,排查部署报错)

四、前端项目部署与配置全流程

4.1 前端项目打包

• 前端开发完成后,执行打包命令(Vue/React项目通用),生成静态资源文件(包含HTML、CSS、JS、图片等)

• 打包结果:生成dist文件夹,该文件夹为前端最终需要部署的文件

4.2 前端资源上传服务器

1. 通过FinalShell远程连接Linux服务器,创建专属前端静态资源存放目录(如/usr/local/frontend/dist)

2. 将本地打包好的dist文件夹,上传至服务器该目录下

4.3 Nginx核心配置(前端部署关键)

Nginx是前端部署的核心中间件,负责监听请求、转发流量、域名映射,配置步骤如下:

1. 安装Nginx:在Linux服务器通过命令安装Nginx服务

2. 修改Nginx配置文件:找到nginx.conf配置文件,添加核心配置

○ 监听80端口(网页默认访问端口)

○ 配置服务器域名,指向前端dist文件夹所在目录

○ 配置请求转发规则,将前端接口请求转发至后端服务

3. 重启Nginx:配置修改完成后,重启Nginx服务,使配置生效

4.4 前端访问逻辑

用户通过域名/服务器IP访问 → Nginx监听80端口 → 读取前端dist静态资源 → 浏览器渲染页面,完成前端访问

五、后端项目部署与配置全流程

5.1 后端项目本地打包

1. 确认application.yml配置文件:完善数据库连接、Redis、端口等配置

2. 执行打包命令:将后端项目打包为Jar包,生成在项目target目录下

5.2 后端Jar包上传服务器

1. 在Linux服务器创建专属后端项目目录(如/usr/local/backend/jar)

2. 将本地打包好的Jar包,上传至该目录

5.3 后端服务启动

1. 进入Jar包所在目录,执行后台启动命令:nohup java -jar 项目名.jar &

2. 验证启动:通过查看运行日志,确认后端服务启动成功,接口正常监听

5.4 后端部署核心注意事项

• 确保服务器已安装JDK、MySQL、Redis,且服务正常运行

• 开放服务器端口:后端接口端口、MySQL端口、Redis端口需在服务器安全组放行,否则无法访问

• 数据库初始化:提前将本地数据库脚本导入服务器MySQL,确保数据连接正常

六、前后端联调完整链路

1. 前端页面发起接口请求 → 通过域名/IP请求对应接口地址

2. Nginx接收请求,根据配置转发至后端服务

3. 后端Controller层接收请求 → Service层处理业务 → Mapper层操作数据库

4. 后端处理完成后,返回数据至Nginx → Nginx转发至前端

5. 前端接收数据,渲染页面展示,完成一次完整请求

七、后续待办学习重点

本次培训已完成基础架构、开发逻辑、全链路部署梳理,后续将开展专项进阶讲解

1. Nginx详细配置:深度讲解Nginx配置规则、反向代理、负载均衡、跨域解决等实操细节

2. 前端部署进阶:前端路由配置、静态资源缓存、打包优化、部署报错排查

3. 后端部署优化:Jar包开机自启、服务监控、日志管理、性能调优

八、学习实操建议

1. 先搭建本地环境:先在本地完成前后端项目联调,确保代码无问题,再进行服务器部署

2. 分步部署:先部署后端、验证接口正常,再部署前端、调试页面访问,逐步排查问题

3. 熟记配置文件:前后端配置文件是部署核心,牢记数据库、Nginx、项目端口等配置规则

4. 多练Linux命令:服务器操作全依赖命令行,熟练基础命令才能快速完成部署与问题修复