• 谷粒商城的常见错误


    第一个就是环境问题
    尤其是springcloud和springboot之间的环境关系(看官方文档或者直接都用最新的)但直接用最新的可能会需要导入其他依赖

    原来spring-cloud-dependencies 2020.0.0 版本以上不在默认加载bootstrap 文件,如果需要加载bootstrap 文件需要手动添加依赖。

            <dependency>
                <groupId>org.springframework.cloudgroupId>
                <artifactId>spring-cloud-starter-bootstrapartifactId>
            dependency>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    服务注册,如果没有使用ribbion一定要指明,否则会报错

    
                <dependency>
                    <groupId>com.alibaba.cloudgroupId>
                    <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
                    
                    <exclusions>
                        <exclusion>
                            <groupId>org.springframework.cloudgroupId>
                            <artifactId>spring-cloud-starter-netflix-ribbonartifactId>
                        exclusion>
                    exclusions>
                dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    后面就会报错没有负载均衡
    在这里插入图片描述

    <dependency>
                <groupId>org.springframework.cloudgroupId>
                <artifactId>spring-cloud-starter-loadbalancerartifactId>
                <version>2.2.1.RELEASEversion>
            dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在想研究git代码时,需要想方设法先让代码运行起来再去研究

    若报错信息如下
    HikariPool-1 - Connection is not available, request timed out after
    就需要手动配置yml文件,添加红色圈起来的部分代码
    在这里插入图片描述

    如果更改@Requestmaping注解中的url,而输入网址依旧是原来的,可以试试将maven先clean后在install下就可以得到想要的效果了

    端口占用的情况,输入两个指令即可

    netstat -ano|findstr “10000”(10000是被占用的端口号)
    
    taskkill -PID 4492 -F
    
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述

    需要使用Validation是后需要导入依赖(springboot高版本没有包含这个依赖) spring-boot-starter-validation

    第85集会出现循环依赖的问题(这是因为springcloud最新版本问题)

    解决方法,在yml文件下添加以下内容

    spring:	
    	main:
        	allow-circular-references: true
    
    • 1
    • 2
    • 3

    调用StringTemplate时,要用@Autowired注解,而不是@Resource注解

    feign远程调用丢失请求头
    解决方案就是加上feign远程调用的请求拦截器
    在这里插入图片描述在这里插入图片描述

    Feign远程调用丢失请求头问题 P268

    Feign异步调用丢失请求头问题 P269

    如何发现问题的?
    我们再进行断点测试的时候,发现数据并没有传进来,因为这个问题是在加上了异步后出现的问题,所以初步定为是异步的问题,然后我再各个线程都打印了线程号,发现主线程,其余线程号都不相同,就猜是不是因为线程不同而导致数据没有同步了?然后查阅相关资料,发现确实有这个问题
    简单来说原因是异步后不再同一线程,数据也就不在同一线程上,不同线程不共享数据。我们可以在主线程里获取之前的请求,然后再每个线程里都共享之前的请求

    分布式session不共享不同步的问题 P225 P256

    RabbitMQ在P293使用
    注意ttl时long类型数字,需要在数字后添加L
    我遇到了循环依赖的问题,暂时没解决,只能通过yml配置允许了循环依赖
    P330有类似循环依赖解决思想
    使用时候需要开启注解@EnableRabbit

    消息丢失、积压、重复等解决方案 P300

    循环依赖问题是面试重点,最好要理解透

  • 相关阅读:
    Linux Kernel入门到精通系列讲解(QEMU-虚拟化篇) 2.5 Qemu实现RTC设备
    MyBatis-Plus分页查询
    mysql-2-用户-授权
    ABAP调用Https接口 Ssl证书导入
    网络优化(二)——梯度下降
    求助,有关Kriging 代理模型相关问题
    oceanbase数据库安装和连接实战(阿里云服务器操作)
    【计网实验报告】Cisco局域网模拟组建、简单网络测试
    服务器连接校园网
    2022 Nomachine 最简安装与使用指南
  • 原文地址:https://blog.csdn.net/qq_56299755/article/details/125662360