• API网关及Gateway 总结


    1、API 网关
    在微服务架构中,UI 通常连接多个微服务。如果微服务是细粒度的(FaaS) ,那么客户端可能需要连接非常多的微服务,这将变得繁杂和具有挑战性。此外,这些服务包括它们的 API 还将不断进化。大型企业还希望能有其他横切关注点(SSL 终止、身份验证、授权、节流、日志记录等)。
    一个解决这些问题的可行方法是使用 API 网关。API 网关位于客户端 APP 和后端微服务之间充当立面,它可以是反向代理,将客户端请求路由到适当的后端微服务。它还支持将客户端请求扇出到多个微服务,然后将响应聚合后返回给客户端。它还支持必要的横切关注点。

    优点
    ◾在前端和后端服务之间提供松耦合。
    ◾减少客户端和微服务之间的调用次数。
    ◾通过 SSL 终端、身份验证和授权实现高安全性。
    ◾集中管理的横切关注点,例如,日志记录和监视、节流、负载平衡。

    缺点
    ◾可能导致微服务架构中的单点故障。
    ◾额外的网络调用带来的延迟增加。
    ◾如果不进行扩展,它们很容易成为整个企业应用的瓶颈。
    ◾额外的维护和开发费用。

    何时使用 API 网关
    ◾在复杂的微服务架构中,它几乎是必须的。
    ◾在大型企业中,API 网关是中心化安全性和横切关注点的必要工具。
    何时不宜使用 API 网关
    ◾在安全和集中管理不是最优先要素的私人项目或小公司中。
    ◾如果微服务的数量相当少。

    SpringCloud Gateway 使用的 Webflux 中的 reactor-netty 响应式编程组件,底层使用了 Netty 通讯框架
    Gateway 用途简要用这个图可以概况

    可完成的功能:

    • Route(路由)
    • Predicate(断言)
    • Filter(过滤器)
  • 相关阅读:
    XidianOJ 1073 Nunchakus
    XidianOJ 1024 2的幂次表示
    XidianOJ 1072 National Disaster
    XidianOJ 1093 一元三次方程
    中国剩余定理
    bzoj2818(欧拉函数递推)
    poj2311(博弈论,sg函数)
    contesthunter#46-A(分块)
    Tree,点分治
    poj3580(splay 毒瘤题)
  • 原文地址:https://www.cnblogs.com/stubborn-dude/p/14707864.html
Copyright © 2020-2023  润新知