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

藁城网站建设哪家好我想投资谁有项目

藁城网站建设哪家好,我想投资谁有项目,东莞电商网页设计,成都市郫都区文章目录SpringCloud微服务技术栈之网关服务Gateway前言网关服务Gateway的基本概念Gateway的体系结构Gateway的主要功能网关服务Gateway的架构设计架构设计方案示例代码网关服务Gateway的实践操作1. 创建工程2. 配置路由规则3. 实现过滤器4. 集成服务注册中心5. 启动网关服务器… 文章目录SpringCloud微服务技术栈之网关服务Gateway前言网关服务Gateway的基本概念Gateway的体系结构Gateway的主要功能网关服务Gateway的架构设计架构设计方案示例代码网关服务Gateway的实践操作1. 创建工程2. 配置路由规则3. 实现过滤器4. 集成服务注册中心5. 启动网关服务器总结SpringCloud微服务技术栈之网关服务Gateway 前言 在微服务架构中微服务数量的增加会使得系统中出现大量的服务实例同时每个服务往往又有多个版本这些版本需要进行升级、降级等操作。因此对于这些微服务的调用和路由管理就变成了一个巨大的挑战。Spring Cloud网关服务Gateway可以作为微服务架构中的一个基础设施通过将API网关方式暴露给服务客户端从而控制所有的请求流量并支持许多传输协议例如HTTP、WebSocket等。 本篇博客主要围绕SpringCloud微服务技术栈中的网关服务Gateway进行介绍和实践包括其基本概念、架构设计和实践操作。 网关服务Gateway的基本概念 网关服务是微服务架构中的一个基础设施主要用于集中处理服务请求从而更好地控制和管理整个系统。SpringCloud网关服务Gateway是一款基于Spring框架的微服务网关服务它提供了许多特性比如路由、过滤、限流、负载均衡、熔断器等。 Gateway的体系结构 Gateway主要包含以下两个组件 Route路由是指从网关接收到客户端请求并将请求转发到适当的微服务实例。路由是Gateway的基本组成部分它由ID、URI、谓词集合和过滤器工厂等组成。Filter过滤器用于在路由请求过程中向请求添加如鉴权、限流、日志输出等动态功能。 Gateway的主要功能 路由策略基于请求URL或请求Header内容将请求路由到不同的后端服务。负载均衡采用Ribbon来实现负载均衡可以在多个实例之间分配负载。限流控制使用Hystrix实现服务熔断和限流控制。过滤器支持用户自定义过滤器可用于鉴权、请求响应加解密、统一异常处理等。 网关服务Gateway的架构设计 架构设计方案 我们在实际项目开发中通常需要先对Gateway进行一个整体的架构设计这里我们介绍一种典型的架构设计方案。 设计网关服务Gateway的Filter过滤器负责实现鉴权、请求与响应加解密、统一异常处理。基于Eureka实现服务注册和发现功能在Gateway中加入DiscoveryClient组件用于管理后端服务。基于RouteLocator实现路由策略将请求转发到相应的微服务实例上并支持灰度升级等高可用特性。使用Hystrix实现限流控制当后端服务出现问题或网络拥塞时能够合理地进行资源分配和降级策略。 示例代码 下面是一个典型的Gateway实现代码 SpringBootApplication public class GatewayServerApplication {public static void main(String[] args) {SpringApplication.run(GatewayServerApplication.class, args);}Beanpublic RouteLocator customRouteLocator(RouteLocatorBuilder builder) {return builder.routes().route(r - r.path(/v1/api/user/**).uri(lb://user-service)).route(r - r.path(/v1/api/order/**).filters(f - f.stripPrefix(1)).uri(lb://order-service)).build();} }上述代码中我们创建了一个名为GatewayServerApplication的SpringBoot应用。其中的RouteLocator类就是路由配置的核心类。在这个例子中我们先对URI路径进行转发然后通过Ribbon来实现负载均衡。 网关服务Gateway的实践操作 在实践操作中我们需要先安装SpringBoot和SpringCloud环境然后搭建一个简单的微服务应用。这里我们以一个简单的用户管理系统为例进行演示。具体步骤如下 1. 创建工程 首先使用Spring Initializr创建一个新的Spring Boot工程并添加相关依赖 dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-gateway/artifactId /dependency dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-client/artifactId /dependency2. 配置路由规则 在application.yml中进行路由配置 spring:cloud:gateway:routes:- id: user-serviceuri: lb://user-servicepredicates:- Path/v1/api/user/**- id: order-serviceuri: lb://order-servicepredicates:- Path/v1/api/order/**3. 实现过滤器 在实际开发中我们经常需要对客户端请求进行安全认证或者权限校验等操作。SpringCloud Gateway提供了一个统一化的过滤器框架允许我们定义多个可以对特定类型请求进行处理的过滤器。Spring Cloud Gateway中有两种类型的过滤器前置过滤器和后置过滤器。 下面是一个基于过滤器的安全认证实现示例 Component public class AuthorizationFilter implements GatewayFilter, Ordered {private static final Logger log LoggerFactory.getLogger(AuthorizationFilter.class);Overridepublic MonoVoid filter(ServerWebExchange exchange, GatewayFilterChain chain) {//进行请求Token认证如果不合法则返回401String token exchange.getRequest().getHeaders().getFirst(Authorization);if (StringUtils.isBlank(token)) {exchange.getResponse().setStatusCode(HttpStatus.UNAUTHORIZED);return exchange.getResponse().setComplete();}//Token认证通过则将请求转发到对应的微服务实例上return chain.filter(exchange);}Overridepublic int getOrder() {return -100;} }4. 集成服务注册中心 我们需要在网关中加入EurekaClient组件以实现服务注册和发现功能。 spring:cloud:gateway:discovery:locator:enabled: trueapplication:name: gateway-server eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/5. 启动网关服务器 最后我们可以运行GatewayServerApplication并访问相应的API地址进行测试。 总结 本文主要介绍了SpringCloud微服务技术栈中的网关服务Gateway包括其基本概念、架构设计和实践操作。通过Gateway的实现微服务架构能够更好地控制和管理整个系统实现路由策略、负载均衡、限流控制等功能。当然在实际开发中需要进一步针对不同的业务场景进行定制和优化以满足不断变化的需求和挑战。
http://www.hkea.cn/news/14455077/

相关文章:

  • 开展网站建设wordpress php教程 pdf
  • 如何本地搭建自己的网站php外贸网站源码
  • 网站建设销售好做吗开软件外包公司赚钱吗
  • 长安做网站价格成都 建设网站
  • 网站你应该知道我说的是什么吧骆驼有没有做网站的公司
  • 关于学校的网站模板免费下载自己怎么做商城网站视频教程
  • 做网站视频图片加载不出来asp 个人网站
  • 哪些网站可以上传自己做的视频现在去成都安全吗
  • 信息化工作总结 网站建设眼镜网站怎么做
  • idc销售网站源码加强网站内容建设创新
  • 四川省建设注册中心网站滁州市网站建设科技公司
  • dede旅游网站wordpress tags
  • fineui 如何做网站网页设计培训主要经营范围
  • 德州网站建设眼科医院网站优化服务商
  • 二手车网站模板个人备案做企业网站
  • 广东自助建站网站共享虚拟主机普惠版做网站
  • 网站seo优化技术入门百度推广客户端教程
  • 二手手表回收网站好医生网站继续教育网
  • asp网站跳转浏览器厦门外贸推广
  • 网站开发联系方式专注郑州网站建设
  • 南京设计网站的公司咨询网络服务商怎么弄
  • 公司网站制作费计入会计什么科目如何搭建本地wordpress
  • 机械设计师接私活的网站北京新鸿儒做的网站
  • 网站设计论文开题报告网站改版 被百度k
  • 郑州网站关键词推广南充建设网站
  • 如何用代码做分数查询的网站东莞p2p网站开发价钱
  • 湛江网站建设方案书wordpress好还是帝国cms
  • 长沙营销型网站建设公司网站做排名需要多少钱
  • 网站app在线制作网站seo专员
  • 做外贸哪个网站看外汇wordpress 随机名言插件