- 博客(14)
- 资源 (9)
- 收藏
- 关注
原创 SpringCloud实战6 - 使用Hystrix实现微服务的容错处理
容错机制如果服务提供者相应非常缓慢,那么消费者对提供者的请求就会被强制等待,知道提供者相应超时。在高负载场景下,如果不作任何处理,此类问题可能会导致服务消费者的资源耗尽甚至整个系统崩溃。雪崩效应微服务架构的应用系统通常包含多个服务层,微服务之间通过网络进行通信,从而支撑起整个应用系统,因此,微服务之间难免存在依赖关系。我们常把“基础服务故障”导致“级联故障”的现象成为雪崩效应。雪崩效应...
2018-10-31 16:27:41 312
原创 SpringCloud实战5 - 使用Feign实现声明式rest调用
上一节是是使用RestTemplate实现REST API调用的,大致代码如下: @RequestMapping(value = "/hello", method = RequestMethod.GET) public String hello(@RequestParam String name) { ResponseEntity<String&g...
2018-10-31 13:44:58 216
原创 SpringCloud实战4 - Ribbon实现客户端侧负载均衡
Ribbon简介 Ribbon有助于控制HTTP和tcp客户端的行为,为ribbon配置服务提供者地址列表后,Ribbon就可以基于某种负载均衡算法吗,自动的帮助服务消费者去请求。Ribbon默认为我们提供很多负载均衡算法,例如轮询,随机等, SpringCloud在,当Ribbon和Eureka配合使用时,Ribbon可以自动 从Eureka Server获取服务提供者地址,并基于...
2018-10-28 19:12:49 157
原创 spring boot maven 打包提示 “程序包找不到” 解决方法。
再用springboot maven打包的时候会碰到 找不到“程序包找不到” 的问题。解决放下如下修改父pom.xml配置文件。由原来的<build> <plugins> <plugin> <groupId>org.springframework.boot</...
2018-10-28 16:46:24 7579 9
原创 springboot访问请求404解决方法
新手在刚接触springboot的时候,可能会出现访问请求404的情况,代码怎么看都是对的,但就是404。 在十分确定代码没问题的时候,可以看下自己的包是不是出问题了,什么意思么? 答案:SpringBoot 注解 @SpringBootApplication 默认扫描当前类的同包以及子包下的类; 如:启动程序在包名 com.yang.test.ymkribbonco...
2018-10-28 16:22:25 93348 33
原创 SpringCloud实战3 - Eureka的自我保护模式
本文探讨Eureka的自我保护模式,进入自我保护模式最直观的体现就是,页面输出的警告信息,以下的红色部分 默认 情况下,如果Eureka Server在一定时间内没有收到某个微服务的心跳,Eureka Server会注销改实例(默认90秒),但是网络分区故障发生时,微服务与Eureka Server之间无法通信,以上行为就非常危险了--以为微服务本身是健康的,此时不应该注销这个服务。...
2018-10-27 16:44:38 157
原创 SpringCloud实战2 - 将微服务注册到Eureka Server 上
注册到单节点Eureka Server 将编写如何将微服务注册到Eureka Server上 先创建一个子模块项目,用来放api接口,然后再创建一个子模块,充当提供者。 在提供者项目的pom文件中添加依赖 <dependency> <groupId>org.springframework.clo...
2018-10-27 16:26:35 341
原创 SpringCloud实战1 - 微服务注册于发现Eureka
服务发现简介 服务提供者,服务消费者,服务发现组件这三者关系大致如下: 1、服务提供者启动后,将自己的网络地址等信息注册到服务发现组件中,服务发现组件会保存这些信息。 2、服务消费者可从服务发现组件中查询服务提供者的网络地址,并使用该地址调用服务提供者的接口。 3、各个微服务与发现组件会使用一定的机制(例如心跳)通信,服务发现组件若长时间无法与某个服务实例通讯,则会注...
2018-10-26 17:07:23 203
原创 Dubbo实战介绍5 - 服务降级
代码配置 用dubbo在进行服务调用时,可能由于各种原因(服务器宕机/网络超时/并发数太高等),调用中就会出现RpcException,调用失败。服务降级就是指在由于非业务异常导致的服务不可用时,可以返回默认值,避免异常影响主业务的处理。 Dubbo使用mock配置来实现服务的降级,mock支持一下两种配置 1、配置boolean值,默认false,如果配置为true...
2018-10-25 15:51:53 165
原创 Dubbo实战介绍4 - 容错机制与负载均衡
集群容错机制的原理 假如我们使用的单机模式的dubbo服务,消费者发出一次请求,恰好这次由于网络问题调用失败,我们可以配置重试策略,可能第二次调用时成功的。但是假如假如提供者发生故障,那么消费者再怎么重试调用都是失败的,所以我们采取集群容错模式,这样假如单个服务节点故障无法提供服务,则可以根据配置的集群容错模式,调用其他的服务节点。这样就提高了服务的可用性。集群容错模式的配置方式 ...
2018-10-24 16:12:21 211
原创 Dubbo实战介绍3 - 通信协议
Dubbo支持的协议dubbo支持多协议 dubbo协议:为dubbo默认的协议,采用单一长连接和NIO异步通讯,适合小数据量大并发的服务调用,以及服务消费者的机器数量远大于服务提供者的机器数的情况。 Hessian协议: Hessian协议用于集成Hessian的服务,Hessian底层采用Http通讯,采用Servlet暴露服务,Dubbo缺省内嵌Jetty作为服务器实现...
2018-10-23 17:43:13 228
原创 Dubbo实战介绍2 - 服务的注册与发现
注册中心dubbo支持多注册中心,不仅支持多种形式的注册中心,还支持向多个注册中心注册。目前dubbo支持的注册中心有如下四种Multicast注册中心 该注册中心不需要启动任何中心节点,只要广播地址一样,就可以互相发现。组播受网络结果影响,只适合小规模的应用或开发阶段使用。ZooKeeper 注册中心 是一个树形的目录服务,为分布式应用提供一致性服务,还支持变更推送功...
2018-10-23 17:11:08 443
原创 Dubbo实战介绍1 - 配置方式
dubbo的四种配置方式 dubbo的配置主要分为三大类,服务发现,服务治理和性能调优 服务发现类:表示该配置用于服务的注册于发现,目的是让消费者找到生产者 服务治理类:表示该配置用于治理服务间的关系,或为开发测试提供便利条件 性能调优类:表示该配置用于性能调优,不同的选项会对性能产生不同的影响。 介绍具体的配置之前,我们先看看Dubbo支持的四种配置方式。...
2018-10-23 14:41:35 142
原创 String是值传递还是引用传递
突然想到一个比较有意思的问题。 1、我们自己定义的类的参数传入方法,并在方法内改变了引用的值。 然后他在方法外使用这个值,发现这个类的参数是改变了的但是。 2、String类型的参数传入方法,并在方法内改变了引用的值。 然后他在方法外使用这个值,发现这个String还是之前的值,并没有改变基本类型参数public class Test { public static...
2018-10-23 11:23:11 3793
springboot+springcloud 第9篇
2018-11-04
springboot+springcloud第8篇
2018-11-02
springboot+springcloud第7篇
2018-11-01
springboot+springcloud第6篇
2018-10-31
springboot+springcloud第5篇
2018-10-31
springboot+springcloud第4篇
2018-10-28
springboot+springcloud 第2篇
2018-10-27
springboot+springcloud
2018-10-26
springboot+dubbo
2018-10-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人