前后端分离和正/反向代理

前后端分离

在开发的时候,前端用前端的服务器,后端用后端的服务器,当开发前端内容的时候,可以把前端的请求通过前端服务器发给后端(称为反向代理)。这样就能实时观察结果,并且不需要知道后端怎么实现,而只需要知道接口提供的功能,两边的开发人员就可以同步开发。

前后端分离的优点:

  1. 项目的分工更加明确了
  2. 实现了前后端的解耦
  3. 可以将前端和后端部署到不同的服务器上来减轻服务器的压力
  4. 前后端代码在不同的服务器上,可以提高安全性

项目开发的方式:

  1. 产品经历/领导/客户提出需求
  2. UI做出设计图
  3. 前后端约定接口&数据&参数
  4. 前后端并行开发(无强依赖,可前后端并行开发,如果需求变更,只要接口&参数不变,就不用两边都修改代码,开发效率高)
  5. 前后端集成
  6. 前端页面调整
  7. 集成成功
  8. 交付

请求方式:

  1. 浏览器发送请求
  2. 直接到达html页面(前端控制路由与渲染页面,整个项目开发的权重前移)
  3. html页面负责调用服务端接口产生数据(通过ajax等等,后台返回json格式数据,json数据格式因为简洁高效而取代xml)
  4. 填充html,展现动态效果,在页面上进行解析并操作DOM

好文推荐:什么是前后端分离

正向代理和反向代理

正向代理

在这里插入图片描述
指是一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。
步骤:

  1. 用户发送请求到自己对应的代理服务器
  2. 代理服务器发送请求到服务器
  3. 服务器响应请求,将数据返回到对应代理服务器
  4. 代理服务器把数据返回给用户

特点:

  1. 代理服务器代理客户,同原始服务器做通信
  2. 一个局域网内的所有用户可能被一台服务器做了正向代理,由该台服务器负责 HTTP 请求;
反向代理

在这里插入图片描述
指以代理服务器来接受 Internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 Internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
步骤:

  1. 用户发送请求到服务器
  2. 反向代理服务器发送请求到真正的服务器
  3. 真正服务器返回数据给反向代理服务器
  4. 反向代理服务器将数据返回给用户

特点:

  1. 代理服务器,原始服务器对客户端不可见
  2. 意味着用户和负载均衡服务器直接通信,即用户解析服务器域名时得到的是负载均衡服务器的 IP ;
共同点
  1. 代理服务器作为服务器和客户端的中间层
  2. 加强内网安全性
  3. 代理服务器可以做缓存,提高访问速度
区别
  1. 正向代理代理客户端,反向代理代理服务器
  2. 正向代理,服务器不知道客户端;反向代理,客户端不知道服务器
  3. 正向代理主要是用来解决访问限制问题;而反向代理则是提供负载均衡、安全防护等作用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值