本章我们简单介绍微服务架构下的API服务网关,本章我们将讨论以下话题:
- 什么是API服务网关
- 为什么需要API服务网关
- API服务网关的工作机制
处理横切关注点
当我们在开发设计大型软件应用时,我们一般都会采用分层的架构模式,比如,在WEB应用程序中,下面的这种架构是我们最为常见的设计模式
在这样的一个分层架构中,我们可以看到应用被分成了web层、业务层、数据层。在分层架构设计中,我们可以看到有一些不同的层级都可以抽象出一些共性的组件,比如:
这些功能特性并不属于某个特定的架构层级,而适用于所有的分层,因此从架构的角度来讲,我们需要将这些功能特性以一种通用的方式去实现。这就是我们之前所说的面向切面编程,而过滤器和拦截器则是我们实现AOP最常见的手段。
API服务网关的必要性
当我们在讨论微服务架构时,我们需要面对的是不同服务间的相互调用,那问题来了?究竟我们需要在架构中的哪个位置去实现这些共性的功能特性呢?
这就体现了API服务网关的具体作用了。
API服务网关如何工作
在微服务架构中,所有内、外的服务请求都会通过API服务网关来路由,服务网关负责实现了认证、日志、审计、限流等相关基础功能,假设,如果你想限制某个客户端请求某个服务的次数,那么我们就可以通过API服务网关来进行相应的限流操作。Netflix Zuul是目前业界流行的API服务网关解决方案。
总结
与AOP类似,AOP处理关注的是独立应用中的横切关注点,而API服务网关处理的则是企业级应用中微服务架构中的一些公共特性。
https://dzone.com/articles/microservices-architectures-introduction-to-api-ga
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)