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

室内设计品牌深圳网站优化网站

室内设计品牌,深圳网站优化网站,免费咨询话术,石家庄疫情最新动态目录 ✅需求的产生 ✅什么是网关? ✅快速入门 ✅创建新版块 ✅引入网关依赖 ✅编写启动类 ✅配置路由规则 ✅测试 ✅总结 ✅需求的产生 上篇文章 【SpringCloud】微服务的治理以及服务间的远程调用-CSDN博客 我们认识了什么是微服务以及微服务架构…

目录

✅需求的产生

✅什么是网关?

 ✅快速入门

✅创建新版块

✅引入网关依赖

✅编写启动类         

✅配置路由规则

✅测试

✅总结


✅需求的产生

上篇文章 【SpringCloud】微服务的治理以及服务间的远程调用-CSDN博客 我们认识了什么是微服务以及微服务架构的优点,但是基于上篇文章我们可以发现服务拆分后将会面临两个问题:

  ▪  服务地址过多,而且将来可能变化,前端不知道该请求谁.

  ▪  每个服务可能都需要用户登录信息,若每个微服务都做登录校验,不仅麻烦,而且还会有秘钥泄漏的风险。

所以就需要想办法解决这些问题,于是就引出了我们今天的主角—网关!

✅什么是网关?

网关就是网络的关口,负责请求的路由、转发、身份校验

更通俗的来讲,网关就像是以前园区传达室的大爷,而每个微服务就像小区里的住户:

  • 外面的人要想进入小区,必须经过大爷的认可,如果你是不怀好意的人,肯定被直接拦截。

  • 外面的人要传话或送信,要找大爷。大爷帮你带给目标人。

微服务网关就起到同样的作用,前端请求不能直接访问微服务,而是要请求网关:

  • 网关可以做安全控制,也就是登录身份校验,校验通过才放行。

  • 通过认证后,网关再根据请求判断应该访问哪个微服务,将请求转发过去。

 ✅快速入门

SpringCloudGateWay官网地址:

官方文档https://spring.io/projects/spring-cloud-gateway/#learnhttps://spring.io/projects/spring-cloud-gateway/#learnhttps://spring.io/projects/spring-cloud-gateway/#learn选择SpringCloudGateway的优势:

它基于 响应式编程模型(Reactive,使用 Project Reactor 和 WebFlux),支持非阻塞 I/O,适合高并发场景。

创建新版块

新创建一个Module作为网关微服务:

 

引入网关依赖

在 hm-gateway模块的 pom.xml文件中引入依赖:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>hmall</artifactId><groupId>com.heima</groupId><version>1.0.0</version></parent><modelVersion>4.0.0</modelVersion><artifactId>hm-gateway</artifactId><properties><maven.compiler.source>11</maven.compiler.source><maven.compiler.target>11</maven.compiler.target></properties><dependencies><!--common--><dependency><groupId>com.heima</groupId><artifactId>hm-common</artifactId><version>1.0.0</version></dependency><!--网关--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency><!--nacos discovery--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!--负载均衡--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-loadbalancer</artifactId></dependency></dependencies><build><finalName>${project.artifactId}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>
</project>

 

编写启动类         

代码如下:

package com.hmall.gateway;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class GatewayApplication {public static void main(String[] args) {SpringApplication.run(GatewayApplication.class, args);}
}

 

配置路由规则

接下来,在 hm-gateway模块的 resources目录新建一个 application.yaml文件,内容如下:

server:port: 8080
spring:application:name: gatewaycloud:nacos:server-addr: 192.168.31.128:8848 #自己的虚拟机地址gateway:routes:- id: item # 路由规则id,自定义,唯一uri: lb://item-service # 路由的目标服务,lb代表负载均衡,会从注册中心拉取服务列表predicates: # 路由断言,判断当前请求是否符合当前规则,符合则路由到目标服务- Path=/items/**,/search/** # 这里是以请求路径作为判断规则- id: carturi: lb://cart-servicepredicates:- Path=/carts/**- id: useruri: lb://user-servicepredicates:- Path=/users/**,/addresses/**- id: tradeuri: lb://trade-servicepredicates:- Path=/orders/**- id: payuri: lb://pay-servicepredicates:- Path=/pay-orders/**

✅测试

启动GatewayApplication,在nacos中检查是否注册信息,以 http://localhost:8080 拼接微服务接口路径来测试:

✅总结

有了网关以后,我们的微服务地址再也不需要暴露给前端了,我们暴露给前端的仅仅是网关地址,这对于我们的微服务来讲也是一种保护,而且对于前端来讲,由于只知道网关地址,因此整个微服务对于它来讲是隐藏的,是个黑盒的,在前端看来后端和以前的单体架构其实是没什么区别的,使得开发体验一致,所以网关已经成为现在微服务开发必不可少的组件了! 



 是结局,亦是开始!

http://www.dtcms.com/wzjs/448193.html

相关文章:

  • 如何做网站frontpage最近新闻小学生摘抄
  • 手机网站建设毕业论文打开网站搜索
  • 百浪科技做网站怎么样如何做网站推广
  • 公司网站开发网站权重查询工具
  • 视觉设计师证书怎么考优化网络培训
  • 杭州高端网站制作亚马逊查关键词搜索量的工具
  • 那个网站专做委外发手工网络营销渠道策略有哪些
  • 网站设计标杆企业网络技术推广服务
  • 网站做的好的企业为何选择网站推广外包?
  • 企业网站模板包含什么百度指数支持数据下载吗
  • 网站架构设计师待遇怎么样万网域名官网
  • 如何用jsp做简单的网站樱花12e56
  • 做外贸网站买海外域名wix网站制作
  • 网站建设很简单产品推广找哪家公司
  • 长沙网站模板建设seo网站优化公司
  • 网站建设的7种流程百度搜索引擎的使用方法
  • 昆明做网站建设公司怎么制作网页广告
  • 做油漆稀料用哪个网站全国免费发布广告信息平台
  • 临海建设银行网站google官方下载
  • 那些网站做批发国际新闻最新消息十条摘抄
  • 免费的网站域名查询方法有哪些百度关键词搜索技巧
  • 学做烤制食品的网站宁波seo免费优化软件
  • 好的网站具备什么条件申请百度收录网址
  • 浙江省住建和城乡建设厅官方网站新媒体推广渠道有哪些
  • 铜山区规划建设局网站深圳网站推广公司
  • 阿里云网站备份深圳外贸网络推广渠道
  • 商城网站建设是 什么seo优化网
  • 健身网站开发方式百度帐号管家
  • 刷单做任务的网站抖音优化排名
  • 游戏优化软件湖南关键词优化推荐