springCloud之自动扩展 什么是自动扩展?自动扩展分为水平扩展和垂直扩展 水平扩展就是一台机子不够了,就再搞几台 垂直扩展是硬件层面的,比如双核不够了,就4核 自动扩展的意义 提高了高可用性和容错能力。比如某个服务不可用了,自动扩展可以再增加一个新服务来替换他。 增加了可伸缩性。允许访问流量可以自动选择水平扩展的规模。 具有最佳使用率,并节约成本。按需使用,需要几台就部署几台 优先考虑某些服务或服务组。低优先级服务中实 2022-07-20 微服务 #分布式 #自动扩展
springCloud之集成Hystrix 服务熔断什么是服务熔断? 服务熔断就是对服务的调用执行熔断,对于后续的请求,不再调用目标服务,而是直接返回一个合理的信息,比如说请求量太大,返回一个”此时服务过载”,从而可以快速释放资源 保护系统 为什么会有这种熔断机制的出现?在微服务相互调用的时候可能会出现服务调用发生异常或调用超时,多此请求造成服务积压导致服务无法使用后接着级联导致调用此服务的消费者也出现异常或调用超时,最后导致整个系统 2022-07-20 微服务 #分布式 #服务熔断
springCloud网关 1.网关是什么1.1 网关产生的原因? 在微服务架构中,一个系统往往由多个微服务组成,而这些服务可能部署在不同机房、不同地区、不同域名下。这种情况下,客户端想要直接请求这些服务,就需要知道它们具体的地址信息,例如 IP 地址、端口号等。这种客户端直接请求服务的方式存在以下问题: 当服务数量众多时,客户端需要维护大量的服务地址,这对于客户端来说,是非常繁琐复杂的。 在某些场景下可能会存在跨域请求 2022-07-18 微服务 #分布式
springCloud之集成Feign Feign是什么? Feign是Netflix开发的一款声明式服务调用组件 Feign可以帮助我们更快捷、优雅地调用HTTP API。 Feign 是 Spring Cloud Netflix 模块的子模块,它是 Spring Cloud 对 Netflix Feign 的二次封装,主要负责 Spring Cloud 的服务调用功能。 SpringCloud 集成Feign 搭建Eureka C 2022-07-18 微服务 #分布式
springCloud之集成SpringCloud Config 集中化配置什么场景会用到配置 想到某一个地方去读取文件 Application.yml/ bootstrap.yml 环境变量: 比如启动参数 数据库存储(系统变量) 为什么要集中化配置? 微服务数量多,配置多 没有版本控制(尤其数据库的系统变量) 分布零散:有的配置在代码里,有的在yml配置文件,有的在数据库 基于静态的配置:每次修改都需要重新发布 手工管理配置繁琐 配置分类按照动 2022-07-18 微服务 #分布式 #集中化配置
springCloud之Eureka搭建 Eureka是什么? Eureka是 Netflix 公司开发的一款开源的服务注册与发现组件。 Spring Cloud 将 Eureka 与 Netflix 中的其他开源服务组件(例如 Ribbon、Feign 以及 Hystrix 等)一起整合进 Spring Cloud Netflix 模块中,整合后的组件全称为 Spring Cloud Netflix Eureka。 Eureka 是 S 2022-07-17 微服务 #微服务
java 反射 反射是什么? 反射就是指在运行状态中,对于任何一个类,能够知道这个类的所有属性和方法。 对于任何一个对象,都能调用它的任意属性和方法,并且可以改变他的属性。 反射是java被市委准动态语言的关键,反射机制允许程序在执行期间借助反射Api来获取任何类的内部信息,并能够直接操作任意对象的内部属性及方法。 加载完类后,在堆内存的方法区就产生了一个Class类型的对象,对应这个类。这个对象就包含了这 2022-07-17 Java基础 #java基础
isAssignableFrom() isAssignableFrom()A.isAssignableFrom(B)方法可用来判断B是否可以由A转换(赋值得来),即 1.当A是类时,表示:类A是否为B类的父类 12345678910111213141516package com.my.test.isAggsignableFrom;class Parent{}class Son1 extends Parent 2022-07-17 Java基础 #java基础
Java获取class的五种方式 获取Class 类实例的五种方式1.已知具体的类,直接取该类的class属性(最安全,最可靠)1Class clazz01 = Person.class; 2.已知某个类的示例,调用该示例的getClass()1Class clazz02 = new Person().getClass(); 3.已知该类的全路径,通过Class.forName() 获得1Class class03 = Cla 2022-07-13 Java基础 #java基础
spring事务失效 ~/IdeaProjects/hexo_blog/source/_posts/spring事务失效.md ![image-20220626230019084](/Users/panyurou/Library/Application Support/typora-user-images/im 2022-06-26