一、场景 雪崩效应: 现在微服务架构,一个系统会依赖多个服务。当其中一个服务不可用时,会造成级联故障,从而导致整个系统不可用。 二、Hystrix是什么 Hystrix是一个熔断器,通过限流、降级、隔离这三个方面去实现系统的容错性,保障系统的稳定运行。 三、Hystrix工作流程 1.调用hystr ...
分类:
其他好文 时间:
2020-01-30 09:35:52
阅读次数:
94
在分布式调度中为了保证服务的高可用和容灾需求,通常都会讲服务在多个区域、机架、节点上平均分布,从而避免单点故障引起的服务不可用,在k8s中自然也实现了该算法即SelectorSpread, 本文就来学习下这个算法的底层实现细节 1. 设计要点 1.1 zone与node zone即代表一个区域,no ...
分类:
编程语言 时间:
2020-01-18 14:24:33
阅读次数:
81
Internet Information Services (IIS) 限制了在任何给定时间可在队列中等待的应用程序池请求的最大数量。如果达到此限制,则所有新请求都将被拒绝,而且用户将收到错误消息“503 – 服务不可用”。默认情况下,IIS 将队列长度设置为 1,000 个请求。该默认值可能太低, ...
分类:
其他好文 时间:
2020-01-08 12:18:28
阅读次数:
113
服务熔断 1.是什么 服务熔断熔断机制是应对雪崩效应的一种微服务链路保护机制。当扇出链路的某个微服务不可用或者响应时间太长时,会进行服务的降级,进而熔断该节点微服务的调用,快速返回"错误"的响应信息。当检测到该节点微服务调用响应正常后恢复调用链路。在SpringCloud框架里熔断机制通过Hystr ...
分类:
编程语言 时间:
2019-12-26 11:19:56
阅读次数:
84
应用程序升级面临最大挑战是新旧业务切换,将软件从测试的最后阶段带到生产环境,同时要保证系统不间断提供服务。 长期以来,业务升级渐渐形成了几个发布策略:蓝绿发布、灰度发布和滚动发布,目的是尽可能避免因发布导致的流量丢失或服务不可用问题。 一、 蓝绿发布 项目逻辑上分为AB组,在项目系统时,首先把A组从 ...
分类:
其他好文 时间:
2019-12-25 01:35:38
阅读次数:
83
# 运维管理 ### 1 集群搭建#### 1.1 单Master模式这种方式风险较大,一旦Broker重启或者宕机时,会导致整个服务不可用。不建议线上环境使用,可以用于本地测试。##### 1)启动 NameServer```bash### 首先启动Name Server$ nohup sh mq ...
分类:
其他好文 时间:
2019-12-24 13:56:26
阅读次数:
80
HTTP状态码(HTTP Status Code) 一些常见的状态码为: 200 - 服务器成功返回网页 404 - 请求的网页不存在 503 - 服务不可用 所有状态解释: 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码。 代码 说明 100 (继续) 请求者应当继续提出请求。 ...
分类:
Web程序 时间:
2019-12-03 19:30:48
阅读次数:
110
Nginx Code Status 常见: 200:服务器成功返回网页 403:服务器拒绝请求。 404:请求的网页不存在 499:客户端主动断开了连接。 500:服务器遇到错误,无法完成请求。 502:服务器作为网关或代理,从上游服务器收到无效响应。 503 服务不可用 504:服务器作为网关或代 ...
分类:
其他好文 时间:
2019-11-19 17:23:58
阅读次数:
70
转自 Hystrix原理与实战(文章略长) 背景 分布式系统环境下,服务间类似依赖非常常见,一个业务调用通常依赖多个基础服务。如下图,对于同步调用,当库存服务不可用时,商品服务请求线程被阻塞,当有大批量请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务。并且这种不可用可能沿请 ...
分类:
其他好文 时间:
2019-11-15 12:25:55
阅读次数:
95
一:架构简介 Spring Cloud是微服务思想的体现。每个项目单独部署,我只需要知道你服务的name就能直接调用你,而不关心你的ip和端口的变化。当接口服务不可用的时候,我能感知到你无法用了,就不再使用你。 我们做这么一个场景: producer 有一个生产者服务producer1,对外提供用户 ...
分类:
编程语言 时间:
2019-11-09 11:53:24
阅读次数:
88