为了账号安全,请及时绑定邮箱和手机立即绑定

springmvc的controller和api 网关有啥区别?

springmvc的controller和api 网关有啥区别?

慕运维8079593 2019-05-11 09:06:40
感觉api网关的功能和springmvc的controller的功能差不多啊nginx+controller所在服务的集群可以负载均衡controller可以实现登录和权限控制controller可以实现服务路由
查看完整描述

2 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

我的理解是网关的目标是将权限控制,路由,负载均衡等所有的与业务开发无关的部分提炼出来。我们通常用spring开发java应用,在单应用的时代网关和业务代码杂糅在一起,问题不大。但是在分布式业务开发的场景下,我们的应用通常会部署在不同机房不同的机器上,每个应用可能会存在成百甚至上千的实例。这时候如果再将网关和应用绑定,二者之间的强耦合可能会大大降低应用的可维护性,比如网关的升级可能需要所有的应用实例也同时更新,这样明显非常不方便。因此我们会专门将网关部分的业务提炼出来,单独管理,单独维护。springcloud也有自己的网关实现,可以看看
                            
查看完整回答
反对 回复 2019-05-11
?
慕斯709654

TA贡献1840条经验 获得超5个赞

controller确实可以做登录和鉴权,其次更主要的是业务逻辑但是如果有api网关的话,登录和鉴权可以放到网关层来做,controller只负责具体业务逻辑,有利于代码分层隔离。也有利于解耦
                            
查看完整回答
反对 回复 2019-05-11
  • 2 回答
  • 0 关注
  • 1612 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信