当前位置: 首页 > news >正文

网站建设技术要求定制型网站

网站建设技术要求,定制型网站,公司建设网站流程,企业信息公示信息目录 什么是API网关#xff1f; 为什么要用API网关#xff1f; API网关架构 API网关是如何实现这些功能的#xff1f; 协议转换 链式处理 异步请求 什么是API网关#xff1f; Api网关是微服务的重要组成部分#xff0c;封装了系统内部的复杂结构#xff0c;客户端…目录 什么是API网关 为什么要用API网关 API网关架构 API网关是如何实现这些功能的 协议转换 链式处理 异步请求 什么是API网关 Api网关是微服务的重要组成部分封装了系统内部的复杂结构客户端只需要和API网关交互就能保证用户在不同服务之间能够串通API网关是微服务系统的门面。 为什么要用API网关 网关是微服务系统的唯一入口进入系统的所有请求都需要经过 API 网关。当系统外部的应用或者客户端访问系统的时候会遇到这样的情况 系统要判断它们的权限如果传输协议不一致需要对协议进行转换如果调用水平扩展的服务需要做负载均衡一旦请求流量超出系统承受的范围需要做限流控制针对每个请求以及回复系统会记录响应的日志 所以只要是涉及到对系统的请求并且能够从业务中抽离出来的功能都有可能在网关上实现。这里先简单概括一下API网关的作用 身份验证和安全用户是否安全上传的文件是否安全这里的网关相当于防火墙的作用协议转换泛化调用负载均衡Dubbo框架自带流量控制、审查和检测拦截器动态路由Dubbo中是不要做的自带Cloud需要做压力测试双十一、双十二压测静态相应处理页面的动静分离静态网页直接返回 API网关架构 API网关整理架构图如下图所示 Gateway-Core 核心网关负责接收客户端请求调度、加载和执行组件将请求路由到服务端并处理其返回的结果。 Gateway-Admin 网关管理界面可以进行 API、组件等系统基础信息的配置例如限流的策略缓存配置告警设置。 Gateway-Monitor 监控日志、生成各种运维管理报表、自动告警等管理和监控系统主要是为核心系统服务的起到支撑的作用。 API网关是如何实现这些功能的 协议转换 每个系统内部服务之间的调用可以统一使用一种协议例如HTTPGRPC。 假设每个系统使用的协议不同那么系统之间的调用或者数据传输就存在协议转换的问题了。如果解决这个问题呢API 网关通过泛化调用的方式实现协议之间的转化。 实际上就是将不同的协议转换成“通用协议”然后再将通用协议转化成本地系统能够识别的协议。 这一转化工作通常在 API 网关完成。通用协议用得比较多的有 JSON当然也有使用 XML 或者自定义 JSON 文件的。 不同的协议需要转化成共同语言进行传输。 消息从第一个“处理步骤”流入从最后一个“处理步骤”流出每个步骤对经过的消息进行处理整个过程形成了一个链条。在 API 网关中也用到了类似的模式。 链式处理 消息从第一个“处理步骤”流入从最后一个“处理步骤”流出每个步骤对经过的消息进行处理整个过程形成了一个链条。在 API 网关中也用到了类似的模式。 Zuul 网关过滤器链式处理 下面以 Zuul 为例当消息出入网关需要经历一系列的过滤器。这些过滤器之间是有先后顺序的并且在每个过滤器需要进行的工作也是各不一样 PRE前置过滤器用来处理通用事务比如鉴权限流熔断降级缓存。并且可以通过 Custom 过滤器进行扩展。ROUTING路由过滤器在这种过滤器中把用户请求发送给 Origin Server。它主要负责协议转化和路由的工作。POST后置过滤器从 Origin Server 返回的响应信息会经过它再返回给调用者。在返回的 Response 上加入 Response Header同时可以做 Response 的统计和日志记录。ERROR错误过滤器当上面三个过滤器发生异常时错误信息会进到这里并对错误进行处理。 异步请求 所有的请求通过 API 网关访问应用服务一旦吞吐量上去了如何高效地处理这些请求拿 Zuul 为例Zuul1 采用一个线程处理一个请求的方式。线程负责接受请求然后调用应用返回结果。如果把网络请求看成一次 IO 操作的话处理请求的线程从接受请求到服务返回响应都是阻塞状态。 同时如果多个线程都处在这种状态会导致系统缓慢。因为每个网关能够开启的线程数量是有限的特别是在访问的高峰期。 每个线程处理一个请求为了解决这个问题Zuul2 启动了异步请求的机制。每个请求进入网关的时候会被包装成一个事件CPU 内核会维持一个监听器不断轮询“请求事件”。一旦发现请求事件就会调用对应的应用。获取应用返回的信息以后按照请求的要求把数据/文件放到指定的缓冲区同时发送一个通知事件告诉请求端数据已经就绪可以从这个缓冲获取数据/文件。这个过程是异步的请求的线程不用一直等待数据的返回。它在请求完毕以后就直接返回了这时它可以做其他的事情。 CPU 处理数据以后通知请求端实现异步处理请求有两种模式分别是 ReactorProactor Reactor通过 handle_events 事件循环处理请求。用户线程注册事件处理器之后可以继续执行其他的工作异步而 Reactor 线程负责调用内核的 Select 函数检查 Socket 状态。当有 Socket 被激活时获取网络数据则通知相应的用户线程执行 handle_event 进行数据读取、处理的工作。 Reactor工作原理流水图 Proactor用户线程使用 CPU 内核提供的异步 IO 发起请求请求发起以后立即返回。CPU 内核继续执行用户请求线程代码。此时用户线程已将 AsynchronousOperation异步处理和 CompletionHandler完成获取资源注册到内核。之后操作系统开启独立的内核线程去处理 IO 操作。当请求的数据到达时由内核负责读取 Socket网络请求中的数据并写入用户指定的缓冲区中。最后内核将数据和用户线程注册的 CompletionHandler 分发给内部 ProactorProactor 将 IO 完成的信息通知给用户线程一般通过调用用户线程注册的完成事件处理函数完成异步 IO。 Proactor工作原理流水图
http://www.tj-hxxt.cn/news/232790.html

相关文章:

  • 网站开发技术期末考试试题建设部网站官网造价系统
  • wordpress mv网站模板帮忙做公司网站
  • 服务器怎么放网站吗网络优化师是什么工作
  • 个人做动漫资源网站网站控制板面
  • 微网站建站平台wordpress安装在linux
  • 手机网站下拉菜单代码厦门seo代理商
  • 有网络网站打不开在百度怎么申请自己的网站
  • 沈阳网站建设公司的公司首页4399游戏大全
  • 仿制手机网站教程网站内容的创新
  • 二七网站建设wordpress4.9.8 特别慢
  • 免费静态网站托管光明附近网站建设公司
  • 服装企业 北京 网站建设济南互联网网站建设价格
  • 平台营销方式有哪些湖南网站营销优化开发
  • 济南微网站建设广州网站建设公司招聘
  • 秦皇岛建设厅网站江西省建设厅业绩网站
  • 做环卫设备都有哪些网站做网站怎么对接国际收款商户
  • 什么渠道做网站建设襄阳哪里做网站
  • 网站 用php asp源码 比较好弄一个小程序要多少钱
  • 180天做180个网站网站建设与推广完美结合
  • 努力把网站建设成为怎样做软件app软件
  • 庄河城乡建设管理局网站如何建设cpa影视网站
  • wordpress影视站网络投放广告有哪些平台
  • 如何制作自己的网站 可放广告离线 wordpress
  • o2o手机网站建设难心理学网站开发
  • 外贸一站式推广服务专门做照片的网站
  • 快速建网站的软件宝安网站建设 名匠
  • 网站域名在哪里注册新手学建设网站书籍
  • 网站开发的关键计算机资源计划seo优化网
  • 一个企业网站如何能放到互联网上 vps企业网站推广成功案例
  • 曲靖 曲靖网站建设软件(app)开发做网站在哪个程序做