美文网首页
springcloud学习

springcloud学习

作者: 我就是小政政 | 来源:发表于2020-10-28 17:50 被阅读0次

    1.版本选择

    1.官网查看springcloud与springboot版本对应关系: https://spring.io/projects/spring-cloud#overview

    image.png
    2.官网查看具体版本号约束:https://start.spring.io/actuator/info
    image.png
    springcloud选择GA的稳定版,并进入ReferenceDoc
    image.png
    可以看到准确的版本号对应
    image.png

    springcloud组件停更与替换

    image.png

    环境搭建

    1.maven project


    image.png

    2.编码设置


    image.png

    3.注解支持生效


    image.png
    4.jdk版本
    image.png

    5.文件显示过滤


    image.png
    6.智能提示忽略大小写
    image.png
    7.下载lombok插件
    image.png
    8.自动生成序列化
    image.png
    9.热部署

    1)父pom文件

        <build>
            <plugins>
                <!--热部署-->
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <configuration>
                        <fork>true</fork>
                        <addResources>true</addResources>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    

    2)子module pom文件

            <!--热部署-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
                <scope>runtime</scope>
                <optional>true</optional>
            </dependency>
    

    3)settings设置


    image.png

    4)Ctrl+Shift+Alt+/ 快捷键,选择Registry,设置好后,重启idea


    image.png
    image.png
    10.Run Dashboard多个子工程使用它开查看比较方便

    在工程下的.idea>workspace.xml中修改这部分配置

      <component name="RunDashboard">
        <option name="configurationTypes">
          <set>
            <option value="SpringBootApplicationConfigurationType" />
          </set>
        </option>
        <option name="ruleStates">
          <list>
            <RuleState>
              <option name="name" value="ConfigurationTypeDashboardGroupingRule" />
            </RuleState>
            <RuleState>
              <option name="name" value="StatusDashboardGroupingRule" />
            </RuleState>
          </list>
        </option>
      </component>
    

    这样在view>ToolWindow>RunDashboard中就可以找到了

    项目搭建

    1.Post请求controller中接收实体类时需要添加@RequestBody注解
    2.重构引入自定义jar包时,注意包的引用,Mapper.xml中的也要注意更换(根据Copy Reference的值进行替换)。

    注册中心对比

    Eureka:
    Zookeeper:
    Consul:
    Nacos:

    FAQ

    服务熔断?

    微服务存在雪崩的问题,A调用BC,BC分别调用别的应用,在A的删除链路上,如果有的应用响应时间过长或不可用,那么对A的每一次调用都会造成更多的系统资源消耗,进而引起系统崩溃。
    为了微服务的链路,一旦响应时间过长或者不可用,需要快速返回错误信息,进行服务降级,进而熔断。
    当检测到服务调用正常后再恢复。

    服务降级?

    降级是指待遇下降了,访问一个伪装者而不是真实的数据。将服务分为不同的层级,降级时从外围非核心功能先降级。降级具有代码侵入性,和业务功能有关。熔断是框架层面每个微服务都需要有的机制。

    服务限流?

    缓存可以提升系统访问速度、增大系统处理能力;降级可以将非核心功能屏蔽掉,高峰后再开启;但是有些场景功能又要打开、处理能力又提不上去,那么就需要限流来保护系统。对请求进行限速,一旦超出就进行降级(没办法只能返回兜底数据)、拒绝服务、排队等待等。

    相关文章

      网友评论

          本文标题:springcloud学习

          本文链接:https://www.haomeiwen.com/subject/vslppktx.html