网络通信&微服务

网络通信

VPN 服务器分配内网 IP,加密所有流量,以使用外网访问内网资源

使用了VPN只是第一关,只进入了人家的大厅,只可以访问公共服务(像是只可以在人间公司的大厅里溜达),若想要访问人家提供的高级服务(比如想上楼溜达,还需要预约后得到同意),需要注册并得到同意。

这里的注册:

你要调用人家的哪些服务,需要(源IP、源port、目的IP、目的port)

外部用户或服务通过域名访问API网关,API网关将合法请求转发至SaaS差旅平台的后端服务

跨服务器调用服务

场景:需要调用另一家公司服务器上的A服务的API接口

步骤:1、联通网络(VPN)

2、接通API(需要让对方将你的ip、在哪个端口调用人家的哪个端口写入白名单)

3、本地调用API(涉及到了http调用那一套)

命令 traceroute ip

功能:诊断到公司内部服务器的网络路径和延迟

若显示一致等待的话,就是人家还没同意你访问

DMZ

DMZ区是内外网之间的缓冲区域,包含以下组件:

  • API网关:作为对外服务的统一入口,处理外部请求。
  • 防火墙:保护内网安全,控制流量进出。
  • 待客户提供目的地址:可能是需要客户配置的外部服务地址。
    域名:openapi.hwht.com:可能用于对外提供API服务。
    itravel.hwht.com:可能是差旅平台的外部访问入口。
  • 节能E办-蓝信:可能是集成的第三方应用或内部办公系统

访问关系

外部用户或服务通过域名访问API网关,API网关将合法请求转发至SaaS差旅平台的后端服务

防火墙

防火墙用来控制从外部(如互联网)到DMZ区(如API网关)的流量,限制从DMZ区到内部SaaS差旅平台的访问,仅允许必要的通信(如API网关转发请求至主数据)

微服务架构

微服务架构是一种将复杂应用程序分解为一组小型、独立服务的架构风格,每个服务都围绕特定的业务功能构建,并且可以独立部署和扩展

微服务 VS API网关

微服务:微服务是微服务架构中的基本单元,每个微服务都专注于完成一个特定的业务功能,例如用户管理、订单处理、支付服务等。微服务之间通过轻量级的通信机制(通常是HTTP/REST或消息队列)进行交互。每个微服务都是独立的,微服务架构强调去中心化的设计理念,每个微服务都有自己的数据库和配置管理。

微服务粒度:微服务模块

微服务模块 = 微服务组件模块 + 微服务暴露的api接口

以整个微服务模块做注册与接入,不会管理每个模块暴露的接口

API网关粒度:更细,可以管理到每个API接口

去中心化

东西调用 :(内部通信)东西调用是指在同一个数据中心或网络内部,不同微服务之间或不同虚拟机(VM)、容器之间的横向通信流量
南北调用:(内外通信)从外部客户端到数据中心内部服务的纵向通信流量,或者从数据中心内部服务到外部网络的通信流量。

相关推荐
伊织code1 小时前
MoonBit 月兔 - 云和边缘计算 AI云原生编程语言及开发平台
人工智能·云原生·边缘计算
DemonAvenger1 小时前
Go语言实现高并发网络爬虫:技术实践与经验分享
网络协议·架构·go
SmalBox1 小时前
【开篇导览】探索游戏渲染从UnityURP开始
架构
Wgllss2 小时前
完整案例:Kotlin+Compose+Multiplatform跨平台之桌面端实现(二)
android·架构·android jetpack
anyup2 小时前
uView Pro 正式开源!70+ Vue3 组件重构全记录,助力 uni-app 组件生态,你会选择吗?
前端·架构·uni-app
WebInfra3 小时前
深度剖析 tree shaking:主流打包工具的实现对比
前端·javascript·架构
科技语者Code5 小时前
深入解析模型上下文协议 (MCP):架构、流程与应用实践
人工智能·架构
VisuperviReborn5 小时前
打造自己的前端监控---前端流量监控
前端·设计模式·架构
Somehow0076 小时前
GO语言:后端如何建立中转服务,以实现在前端与PBX服务器之间充当桥梁,帮助搭建WebRTC连接并传输和处理事件?
架构
用户84913717547166 小时前
JustAuth实战系列(第1期):项目概览与价值分析
java·架构·开源