Jared's blog Jared's blog
首页
  • 数据结构与算法
  • 计算机网络
  • 操作系统
  • Java
  • 数据库SQL
  • 设计模式
  • 集成开发环境
  • Linux系统
  • 代码管理
  • 项目管理
  • 后端

    • 中间件
    • Spring家族
    • 服务器软件
    • 数据库
    • 搜索引擎
    • 分布式&微服务
    • 容器化
  • 前端

    • 基础
    • 模板框架
    • 组件化框架
  • 运维知识
  • 部署工具
架构与模型
  • 在线教育
  • 电商
  • 疑惑日志
  • 随笔
  • 友链
  • 书籍
  • 娱乐
  • Github (opens new window)
  • Gitee (opens new window)
  • CSDN (opens new window)

Jared H

💻🤣😜
首页
  • 数据结构与算法
  • 计算机网络
  • 操作系统
  • Java
  • 数据库SQL
  • 设计模式
  • 集成开发环境
  • Linux系统
  • 代码管理
  • 项目管理
  • 后端

    • 中间件
    • Spring家族
    • 服务器软件
    • 数据库
    • 搜索引擎
    • 分布式&微服务
    • 容器化
  • 前端

    • 基础
    • 模板框架
    • 组件化框架
  • 运维知识
  • 部署工具
架构与模型
  • 在线教育
  • 电商
  • 疑惑日志
  • 随笔
  • 友链
  • 书籍
  • 娱乐
  • Github (opens new window)
  • Gitee (opens new window)
  • CSDN (opens new window)
  • online-edu

  • gomall

    • 项目地址
    • Nginx域名访问、动静分离、网关转发
      • 前言
        • 正向代理:
        • 反向代理:
      • nginx反向代理配合网关转发
      • 动静分离
    • 本地缓存,分布式缓存,数据一致性,分布式锁
    • 分布式Session共享
    • 单点登录&社交登录&SpringSession
    • Feign远程调用丢失请求头&异步丢失请求头
    • 内网穿透,支付宝沙箱联调
    • 线程池隔离,异步编排,分布式信号量
    • 高并发编码技巧:缓存、异步、队排好
    • RabbitMQ死信+延时队列,双确认机制可靠消息,业务队列回路

Nginx域名访问、动静分离、网关转发

# 前言

# 正向代理:

​ 比如你现在缺钱,想找马云爸爸去借钱,可想而知人家可能鸟都不鸟你,到最后碰一鼻子灰借不到钱。不过你认识你家隔壁老王,而老王认识马云同志,而且关系还很好。这时候你托老王去找马云借钱,当然这事最后成了,你从马云那里借到了500万!这时候马云并不知道钱是你借的,只知道这钱是老王借的。最后由老王把钱转交给你。在这里,老王就充当了一个重要的角色:代理。

​ 此时的代理,就是我们常说的正向代理。代理客户端去请求服务器,隐藏了真实客户端,服务器并不知道真实的客户端是谁。正向代理应用最广泛的莫过于现在的某些“科学上网工具”,你访问不了谷歌、Facebook的时候,你可以在国外搭建一台代理服务器,代理你访问,代理服务器再把请求到的数据转交给你,你就可以看到内容了。

# 反向代理:

如你现在很无聊,想找人聊天,这时候你拨通了联通客服10010电话,联通的总机可能随机给你分配一个闲置的客服给你接通。这时候你如愿以偿的和客服聊了起来,问了问她目前有没有结婚、有没有对象、家住哪里、她的微信号、她的手机号。。。

此时联通总机充当的角色就是反向代理,你只知道和客服接通并聊了起来,具体为什么会接通这个客服MM,怎么接通的,你并不知道。

反向代理隐藏了真正的服务端,就像你每天使用百度的时候,只知道敲打www.baidu.com就可以打开百度搜索页面,但背后成千上万台百度服务器具体是哪一台为我们服务的,我们并不知道。我们只知道这个代理服务器,它会把我们的请求转发到真实为我们服务的那台服务器那里去。

综上所述:正向代理代理对象是客户端,反向代理代理对象是服务端。

# nginx反向代理配合网关转发

​ 项目上线后,我们需要将项目部署到服务器中,并且购买域名与服务器的公网ip地址进行绑定。我们开发环境中可以通过修改host文件,以本地域名结合nginx反向代理的方式来访问我们的项目。最终让nginx帮我们进行反向代理,所有来自域名的请求,都转到网关服务。网关通过配置文件或者代码的方式设定相关规则,负载均衡去匹配其他微服务。

项目域名访问方案图

# 动静分离

动静分离架构图

# 静:

图片、js、css等静态资源(以实际文件存在的方式)

# 动:

服务器需要处理的请求

以下是微服务动静分离的案例

  • 每一个微服务都可以独立部署、运行、升级、独立自治;

image-20201230163530298

上次更新: 2022/05/25, 09:33:43
项目地址
本地缓存,分布式缓存,数据一致性,分布式锁

← 项目地址 本地缓存,分布式缓存,数据一致性,分布式锁→

Theme by Vdoing Copyright © 2020-2022 Jared H
粤ICP备20046800号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×