zoukankan      html  css  js  c++  java
  • openresty应用场景以及研发网关系统功能说明

    openresty主要应用场景

    Web应用

    进行一些业务逻辑处理,甚至进行耗CPU的模板渲染,一般流程:mysql/redis/http获取数据、业务处理、产生JSON/XML/模板渲染内容,比如京东的列表页/商品详情页。

    Web防火墙

    可以进行IP/URL/UserAgent/Referer黑名单、限流等功能。

    接入网关 

    实现如数据校验前置、缓存前置、数据过滤、API请求聚合、认证管理、负载均衡、流量控制、灰度发布、降级、监控等功能。

    以下是具体功能说明:

    • 鉴权:基于接入应用进行授权验证
    • 安全防护:只有授权的应用才能访问对应的api,ip黑贝名单机制。 扩展:可根据设备id,地理位置,敏感数据二次检验等...
    • 限流:防止外界系统对当前系统的过渡调用,导致服务超载,影响核心业务的使用
    • 动态配置更新:运行时变更API、分组、组件等配置,自动同步、及时生效。
    • 服务路由(rewrite):识别请求参数和路径转发上游API服务。
    • 高可用:支持集群化,避免单点故障。
    • 高性能:网关无状态,支持横向扩展,运行时弱依赖持久层,最大化提升网关整体性能。
    • 熔断(待定):后端服务出现调用超时或者异常,系统自动熔断该服务。
    • 健康检查(待定):针对已经被熔断的服务api,动态检测健康状态,若健康则修复已被熔断的api。(扩展:服务检查)
    • 灰度发布:产品支持让指定部分客户端应用使用新版本API,其他应用继续使用以前的API,当新版本的API逐渐稳定后,所有用户能平滑过渡到新版本的API。使用灰度发布能够及早获得用户的意见反馈,完善产品功能,提升产品质量。让用户参与产品测试,加强与用户互动,降低产品升级所影响的用户范围。
    • 缓存:缓存api后端服务返回的数据,降低后端服务的压力。
    • 分布式缓存:当系统api缓存量大时  可使用redis等集群提高系统响应
    • 日志记录:以指定的维度存入日志系统,方便自定义审计和统计。
    • 超时控制:通过API配置访问超时时间,超时后立即返回,避免工作线程长时间等等。
    • 服务编排:将多个后端服务聚合成一个API暴露,减小客户端开发复杂度,快速生产新的API。
    • 管理中心:API网关后台管理中心简洁明了,方便API网关管理员对API进行管理,数据面板方便了解系统运行情况。
    • 监控中心:监控中心对API运行情况一目了然,通过分析API异常告警辅助系统运维。
  • 相关阅读:
    ubuntu下按安装lamp
    linux 一些简记
    编写shell脚本步骤
    C++ array vector 数组
    抓取网页扒图片相对路径改绝对路径
    静态html文件js读取url参数
    IE7的web标准之道——1:前言(兼目录) (很牛的CSS书籍)
    感谢放逐自由《博客园精华集》分类索引
    这篇文章证实了索引对于IN,LIKE的优化程度,顺便学会了怎么看看语耗费的时间
    命名空间“System”中不存在类型或命名空间名称“Linq”(是缺少程序集引用吗?)
  • 原文地址:https://www.cnblogs.com/phpworld/p/10969401.html
Copyright © 2011-2022 走看看