搭建gateway踩的坑

最近自己搭了一个spring gateway网关,一个eureka注册中心,和两个应用,采用openFeign进行两个应用间的通讯,搭建步骤主要参考:http://t.csdn.cn/WBIsz

这个过程中遇到很多的坑,有些是自己失误导致,在次记录一下:

环境介绍:

操作系统:Windows10,(CentOS Linux release 7.9.2009 (Core),容器dockerdesktop4.9.0,这个环境只部署了Eureka server,然后通过宿主机和容器做了端口的映射后,本机访问通过,后面就没有再使用容器部署,觉得只在本机环境进行练习即可)。

jdk:8;idea:2018;maven:3.5.0;postman:v10

0,环境搭建

        1)下载jdk,下载maven,配置环境变量,验证是否配置成功java -version,mvn -version。

        2)给idea配置mvn,也可以使用idea自带的mvn,只是我习惯自己配置,在settings.xml指定国内仓库和本地参考(参考: maven 设置阿里云仓库-百度经验 (baidu.com))。

1, 步骤1是搭建Eureka Server

        1)问题1:搭建过程中,自己用了最新的maven版本,3.8.6,结果工程创建时,无法下载依赖包,报错:Unable to import maven project: See logs for details,经过查找,发现idea版本与maven版本不匹配导致,重新下载,配置maven:3.5.0,依赖能正常下载,参考:http://t.csdn.cn/s5CGZ

        2)问题2:无法识别yml格式的文件,导致配置了8001端口,还是总是指向tomcat默认的8080端口,这个是因为在application.properites里写的,当然不识别了,创建application.yml,于是进行配置,这个问题得到了解决。

        3)问题3:Eureka控制台报警告:EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE LESSER,这个大红字虽然不影响使用,但是看着别扭,原因是server和client之间每隔30秒会进行一次心跳通信,告诉server,client还活着,可以选择关闭告警功能,或调低比例阈(yu四声)值,我先是选择关闭阈值(参考:http://t.csdn.cn/LIyxg),发现这个警告没有了,又出现了新的警告,大概意思是说你这个关闭了,安全性就不保证了,于是调低了阈值(参考:http://t.csdn.cn/kfB7r),问题解决。

        4)问题4:部署到容器,与宿主机端口映射的问题(如果本机练习,则无此问题)。(参考:http://t.csdn.cn/bwrNq),这里其实在宿主机找指定容器的配置文件可能会和博文中的不一致,我的配置文件地址在该博文的评论里。一定要先停止要修改的容器,然后修改配置文件,修改后不要启动那个容器,否则配置信息将恢复到原来的内容,你的修改就没有了,要重启整个docker,怎么重启呢,搞了半天也不知道,网上查也查不到,没办法,已经零点以后了,选择粗暴方法,用任务管理器杀掉所有docker的相关进程,然后重启电脑,启动docker,就好了,赶紧睡觉。

2. 步骤2是搭建两个应用

        1)用postman发起服务,发起调用的那个服务总是报404,而被调用的服务正常。一看发起调用的服务编译报错了:NoSuchBeanDefinitionException: No qualifying bean of type 'com.digitalpower.loanservice.service.RpcdepositService' available,奇怪啊奇怪,启动类在最外面,确好像总也扫描不到那个rpc的服务类,加上了ComponentScan注解,指定了服务类的路径,倒是编译通过了(虽然编译通过,还是非常纳闷,启动类会扫描本目录和子目录的类啊,我的目录结构也没错,为啥还要指定???),但是postman发起还是404,又到零点了,不搞了。第二天,发现了问题,原来是发起调用的服务的启动类没有加注解EnableFeignClients,加上后,编译通过,404消失,feign跨应用调用,也成功。

3. 步骤3是搭建gateway。这一步很简单也很顺利,进行了yml配置,不需要动任何代码,Eureka控制台显示三个服务均启动了,指定gateway的地址端口,postman发起,成功。

        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值