website icon
会一些前端,懂一些后端,做过几年管理,弄过一些运维,搞过一些互联网开源项目,没错,我是一个爱开源爱折腾的团队万能胶!

Hystrix实现原理

流程图 下图展示了当你使用 Hystrix 来包装你请求依赖服务时的流程:   接下来将详细介绍如下问题: 构建 HystrixCommand 或者 HystrixObservableCommand 对象 执行命令(即上述 Command 对象包装的逻辑)  结果是否有缓存 请求线路(类似电路)是否是开路 线程池/请求队列/信号量占满时会发生什么 使用 HystrixObservableCommand.construct() 还是 HystrixCommand.run() 计算链路健康度 失败回退逻辑 返回正常回应 1. 构建 HystrixCommand 或者 HystrixObservab
springCloud 2年半前 0 844 0

针对故障设计微服务架构

针对故障设计微服务架构 服务边界定义良好的微服务使得隔离故障成为可能。但是正如其它的分布式系统,网络,硬件或者应用层出问题的概率更高。服务依赖的后果是任何组件可能暂时对用户不可用。为了让局部故障的影响最小化,我们需要构建能优雅响应部分依赖中断运行的容错的服务。 这篇文章介绍了RisingStack’s Node.js Consulting & Development experience里面关于构建高可用微服务最通用的技术和架构模式。 如果你不熟悉这篇文章里的模式,不一定意味着你做错了什么。构建高可用系统需要额外的开销。 微服务的风险 微服务架构把应用逻辑移到服务并通过网络层进行通信。网络层通
springCloud 2年半前 0 806 0

使用 Hystrix 实现自动降级与依赖隔离

Hystrix说明 官方文档 [https://github.com/Netflix/Hystrix/wiki] hystrix是netflix开源的一个容灾框架,解决当外部依赖故障时拖垮业务系统、甚至引起雪崩的问题。 2.1为什么需要Hystrix? 在大中型分布式系统中,通常系统很多依赖(HTTP,hession,Netty,Dubbo等),在高并发访问下,这些依赖的稳定性与否对系统的影响非常大,但是依赖有很多不可控问题:如网络连接缓慢,资源繁忙,暂时不可用,服务脱机等。 当依赖阻塞时,大多数服务器的线程池就出现阻塞(BLOCK),影响整个线上服务的稳定性,在复杂的分布式架构的应用程序有很
springCloud 2年半前 0 813 0

Spring Cloud

Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致样板模式,并且使用Spring Cloud开发人员可以快速站起来实施这些模式的服务和应用程序。他们将在任何分布式环境中运行良好,包括开发人员自己的笔记本电脑,裸机数据中心,以及Cloud Foundry等托管平台。 版本:Dalston.RELEASE 特性 Spring Cloud专注于为典型用例提供良好的开箱即用经验和扩展机制来涵盖他人。 分布式/版本化配置 服务注册和发现 路由 service - to - service调用
springCloud 3年前 0 848 0

Eureka简介及原理

Eureka是Netflix开发的服务发现组件,本身是一个基于REST的服务。Spring Cloud将它集成在其子项目spring-cloud-netflix中,以实现Spring Cloud的服务发现功能。目前Eureka 项目相当活跃,代码更新相当频繁,目前最新的版本是1.5.5。Eureka 2.0也在紧锣密鼓地开发中,2.0将会带来更强的功能和更好的扩展性,但是由于还没有Release,故而不作讨论。 本文讲解的Spring Cloud Camden SR1所使用的Eureka版本是1.4.11,还是比较新的。同时有了Eureka 1.x的基础,未来上手Eureka 2.x也会比较容
springCloud 3年前 0 479 0

Eureka问题总结

Spring Cloud中,Eureka常见问题总结。 指定Eureka的Environment eureka.environment: 指定环境 参考文档:https://github.com/Netflix/eureka/wiki/Configuring-Eureka 指定Eureka的DataCenter eureka.datacenter: 指定数据中心 参考文档:https://github.com/Netflix/eureka/wiki/Configuring-Eureka 文中指出,配置-Deureka.datacenter=cloud,这样eureka将会知道是在AWS云上。
springCloud 3年前 0 472 0

Eureka的自我保护模式

自我保护模式是Eureka的重要特性。进入自我保护模式最直观的体现,是Eureka Server首页输出的警告,如图所示。  Eureka Server自我保护模式界面 默认情况下,如果Eureka Server在一定时间内没有接收到某个微服务实例的心跳,Eureka Server将会注销该实例(默认90秒)。但是当网络分区故障发生时,微服务与Eureka Server之间无法正常通信,以上行为可能变得非常危险了——因为微服务本身其实是健康的,此时本不应该注销这个微服务。 Eureka通过“自我保护模式”来解决这个问题——当Eureka Server节点在短时间内丢失过多客户端时(可能发生了网
springCloud 3年前 0 426 0

Ribbon负载均衡策略

Ribbon是Netflix 发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组 件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随即连接等)去连接这些机器。我们也很容易使用Ribbon实现 自定义的负载均衡算法。 Ribbon提供的主要负载均衡策略介绍 简单轮询负载均衡(RoundRobin) 以轮询的方式依次将请求调度不同的服务器,即每次调度执行i = (i + 1) mod n,并选出第i台服务器。 随机
springCloud 3年前 0 335 0
文章
分类
标签
评论
 访问 111300次