规避zuul网关调用微服务404错误的坑

微服务和网关的关系

在使用微服务架构开发中,我们通常会引入zuul网关管理用户请求(转发调用微服务,阻断不合理请求),所以微服务和网关的关系是网关调用微服务。调用过程中404是很头痛的一种错误,各种调试都找不到问题,此处我将详细记录一个处理zuul网关调用微服务404错误的解决流程。

解决思路

1. 检查Eureka注册中心是否都已经注册了网关和我们需要的微服务
如图:
我打开注册中心,需要的网关和微服务已经在注册中心了,如果有,咋们就可以进入第二步了在这里插入图片描述 如果网关和微服务的任何一个没有在注册中心,我们的请求肯定是不能到达的。所以,网关和微服务都还没有被注册到注册中心,我们要做的就是配置配置文件,重启注册中心,网关,微服务。

  • 网关的配置文件
server:
  port: 10010 #网关的端口号
spring:
  application:
    name: salesys-gateway #网关在注册中心的唯一名称
eureka:
  client:
    registry-fetch-interval-seconds: 5
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka #注册中心的地址
zuul:
  prefix: /api #微服务的前缀
  routes: #需要调用的微服务的名称以及路径信息
    item-service: /item/**
    search-service: /search/**
    user-service: /user/**
    auth-service: /auth/**
    ignored-services:
      - upload-service

  • 微服务的配置文件
server:
  port: 8083 # 微服务端口
spring:
  application:
    name: search-service #微服务的名称(名称很重要,网关是通关微服务的名称进行请求的,此处的名称必须和网关中配置的微服务名称一致,否则无法请求)
  data:
    elasticsearch:
      cluster-name: elasticsearch
      cluster-nodes: 192.168.137.101:9300 # 这里我的elasticsearch配置,不用就直接删除
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka #注册中心的地址,将微服务发布到注册中心
  instance:
    lease-renewal-interval-in-seconds: 5
    lease-expiration-duration-in-seconds: 10

当我们的注册中心可以看到我们的微服务和网关时,进行第二步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xjitcm

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值