网关与微服务的概念及在微服务架构中的作用详解

网关的概念

  • 网关(gateway),又称为网间连接器、协议转换器;
  • 网关是在采用不同体系结构或协议的网络之间进行互通时,用于提供协议转换、路由选择、数据交换等网络兼容功能的设施;
  • 网关在传输层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连; 网关既可以用于广域网互连,也可以用于局域网互连;
  • 网关是一种充当转换重任的计算机系统或设备;
  • 网关是一个翻译器,可以在不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间使用;
  • 网关也可以提供过滤和安全功能,大多数网关运行在应用层;

举例: 一个房子里有三个房间,一个大门,房子可以比喻成你的电脑所在的局域网,三个房间可以比喻成你所在局域网中的三台电脑,房子的大门可以比喻成网关。当你在房子内的一个房间进入另一个房间的时候并不需要经过房子的大门;在局域网中也是一样的,处在同一局域网的中计算机进行通信的时候并不需要用到网关。当你需要到邻居家去玩的时候需要从你家房子的大门出去;相应的,局域网中的计算机需要和其它局域网中的计算机、和互联网上的计算机进行通信的时候,数据包必须要通过网关才可以到达。

微服务的概念

理解微服务之前首先要知道什么是服务化,用通俗的话来讲,服务化就是把传统的单机应用中通过 JAR包依赖产生的本地方法调用,改造成通过 RPC 接口产生的远程方法调用。一般在编写业务代码时,对于一些通用的业务逻辑,我会尽力把它抽象并独立成为专门的模块,因为这对于代码复用和业务理解都大有裨益。通过服务化,可以解决单体应用膨胀、团队开发耦合度高、协作效率低下的问题。

  • 服务拆分粒度更细:微服务可以说是更细维度的服务化,小到一个子模块,只要该模块依赖的资源与其他模块都没有关系,那么就可以拆分为一个微服务。

  • 服务独立部署:每个微服务都严格遵循独立打包部署的准则,互不影响。比如一台物理机上可以部署多个 Docker 实例,每个Docker实例可以部署一个微服务的代码。

  • 服务独立维护:每个微服务都可以交由一个小团队甚至个人来开发、测试、发布和运维,并对整个生命周期负责。

  • 服务治理能力要求高:因为拆分为微服务之后,服务的数量变多,因此需要有统一的服务治理平台,来对各个服务进行管理。

网关与微服务之间的关系 - 微服务架构

微服务架构从外到内依次分为:端用户体验层->网关层->BFF层->微服务层
在这里插入图片描述
希望能对你有所帮助,我是热爱互联网的高飞,如有疑问,欢迎评论,希望能与你一起讨论,当然也期待点个赞以示鼓励啦

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值