07 2018 档案
摘要:1. 类加载器有两种(下面说的父类并不是继承关系,而是包装关系): 1.1. Java虚拟机自带的类加载器: 1.1.1. 根类加载器(Bootstrap) --> C++编写 1.1.1.1. 该加载器没有父加载器,它负责加载虚拟机核心类库,如java.lang.*等。 1.1.2. 扩展类加载器
阅读全文
摘要:类加载机制概述:虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,解析和初始化,最终形成可以被虚拟机直接使用的java类型,这就是java虚拟机的机制 1. Java程序执行时遵循以下顺序 1.1. 加载:将类的.class文件中的二进制数据装载到内存中,将其放在运行时数据区的方法区
阅读全文
摘要:项目中用到Feign调用服务端方法并做服务降级处理 1.application.properties配置: 2.pom: 3.客户端调message-server服务的sendMessage方法时:
阅读全文
摘要:服务熔断 类似现实生活中的“保险丝“,当某个异常条件被触发,直接熔断保险丝来起到保护电路的作用, 熔断的触发条件可以依据不同的场景有所不同,比如统计一个时间窗口内失败的调用次数。 1.断路器状态机: Closed:熔断器关闭状态(所有请求返回成功) Open:熔断器打开状态(调用次数累计到达阈值或者
阅读全文
摘要:由于客户端请求服务端方法时,服务端方法响应超过1秒将会触发降级,所以我们可以配置Hystrix默认的超时配置 如果我们没有配置默认的超时时间,Hystrix将取default_executionTimeoutInMilliseconds作为默认超时时间 1.代码中修改默认超时配置(改为3秒): 3.
阅读全文
摘要:所谓降级,就是当某个服务出现异常之后,服务器将不再被调用,此时服务端可以自己准备一个本地的fallback回调,返回一个缺省值。 这样做,虽然服务水平下降,但好歹可用,比直接挂掉要强,当然这也要看适合的业务场景。 启动类: 服务端代码demo(客户端请求服务端serverMethod方法时,如果服务
阅读全文
摘要:令牌桶 限流流程图: RateLimitFilter : Result: ReturnInfo: pom: 一秒内不停提交请求:响应信息:{"code":-10001,"msg":"请求超限"}
阅读全文
摘要:1.什么是Zuul? 路由+过滤器=Zuul,核心是一系列的过滤器 2.Zuul的过滤器: pre:可以在请求被路由之前调用 route:在路由请求时候被调用 post:在route和error过滤器之后被调用 error:处理请求时发生错误时被调用 3.生命周期 流程:请求首先到达pre类型的过滤
阅读全文
摘要:当用户发起请求调用服务,所有请求都走网关,而不是直接调具体服务 我们在网关,可以做 协议转发、防刷、流量管控、日志监控、安全控制等等
阅读全文
摘要:分布式系统中,当B的数量越来越多的时候,A只需要从注册中心获取B注册的服务,而不需要直接从B中获取服务,答案显而易见。 application.yml: EurekaApplication: Pom.xml: Tip:Eureka服务端高可用,生产上建议至少两台以上,相互注册即可
阅读全文

浙公网安备 33010602011771号