高可用架构对于互联网服务基本是标配,无论是应用服务还是数据库服务都需要做到高可用。虽然互联网服务号称7*24小时不间断服务,但多多少少有一些时候服务不可用,比如某些时候网页打不开,百度不能搜索或者无法发微博,发微信等。一般而言,衡量高可用做到什么程度可以通过一年内服务不可用时间作为参考,要做到3个9 ...
分类:
数据库 时间:
2018-06-24 16:10:11
阅读次数:
239
写在开始 在SpringCloud项目中,服务之间相互调用(RPC Remote Procedure Call —远程过程调用),处于调用链路底层的服务产生不可用情况时,请求会产生堆积使得服务器线程阻塞,甚至导致服务器瘫痪。断路器就是为了解决服务不可用问题的方法。 正文开始 本篇在第三篇基础上进行代 ...
分类:
编程语言 时间:
2018-06-20 10:18:08
阅读次数:
347
dubbo降级服务 使用dubbo在进行服务调用时,可能由于各种原因(服务器宕机/网络超时/并发数太高等),调用中就会出现RpcException,调用失败。 服务降级就是指在由于非业务异常导致的服务不可用时(上面举得例子),可以返回默认值,避免异常影响主业务的处理。 dubbo服务降级配置 moc ...
分类:
其他好文 时间:
2018-06-19 13:46:52
阅读次数:
355
502:Bad Gateway 网关错误。nginx在做反向代理时,后端服务不可达(服务刚好死掉了或在启动过程中,即没有完全起来,大部分情况可能是重新发布工程或回滚工程的过程中)。503:服务不可用Service Unavailable。一般是服务器过载,服务器当前无法处理请求。504:Gateway Timeout 网关超时。一般是连接超时或响应超时。 一般502、503、504报错对
分类:
其他好文 时间:
2018-06-07 14:00:35
阅读次数:
157
一些常见的状态码为: 200 - 服务器成功返回网页 404 - 请求的网页不存在503 - 服务不可用 所有状态解释: 1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。代码 说明 100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部 ...
分类:
Web程序 时间:
2018-05-31 11:31:26
阅读次数:
185
一、发现问题 以面是线上机器的cpu使用率,可以看到从4月8日开始,随着时间cpu使用率在逐步增高,最终使用率达到100%导致线上服务不可用,后面重启了机器后恢复。 二、排查思路 简单分析下可能出问题的地方,分为5个方向: 1.系统本身代码问题 2.内部下游系统的问题导致的雪崩效应 3.上游系统调用 ...
分类:
Web程序 时间:
2018-05-30 11:02:17
阅读次数:
286
下面都是我个人工作中最经常碰到的状态码,那些比较少出现的就没有列出来了 301(永久移动) 302(暂时转移) 304(未修改,数据没有更新,和缓存一致) 400(通常是参数错误) 401(没有认证) 403(没有权限,禁止访问) 405(Method方法不允许) 415(请求体的数据格式服务器不支 ...
分类:
Web程序 时间:
2018-05-22 14:56:53
阅读次数:
164
一、背景 用户量比较大或者用户地理位置分布范围很广的项目,一般都会有多个机房。这个时候如果上线springCloud服务的话,我们希望一个机房内的服务优先调用同一个机房内的服务 ,当同一个机房的服务不可用的时候,再去调用其它机房的服务,以达到减少延时的作用。 二、概念 eureka提供了region ...
分类:
编程语言 时间:
2018-05-19 23:21:22
阅读次数:
849
Spring Cloud(四):服务容错保护 Hystrix【Finchley 版】 发表于 2018-04-15 | 更新于 2018-05-07 | 分布式系统中经常会出现某个基础服务不可用造成整个系统不可用的情况,这种现象被称为服务雪崩效应。为了应对服务雪崩,一种常见的做法是手动服务降级。而 ...
分类:
编程语言 时间:
2018-05-11 20:05:03
阅读次数:
218
最近公司的服务总是时好时坏,CPU和内存经常会占用到100%,导致服务不可用,重启之后就好了,但是过一段时间又会出现同样的情况,因此怀疑是出现了内存泄漏。没办法,只能一步步分析看问题出在哪里。 第一步 找到进程的端口号 ,其中XXX代表该进程的关键字。 使用 初步找出占用内存最大的对象,但是由于本次 ...
分类:
其他好文 时间:
2018-05-08 12:11:27
阅读次数:
3153