摘要:
什么是压力测试 压力测试(简称为压测)大部分同学这样认为:先搭建一套与正式环境功能相同的测试环境,并且导入或者生成一批测试数据,然后在另一台服务器,启动多个线程并发地调用需要压测的接口(接口的参数一般也会设置成相同的,比如,想要压测获取商品信息的接口,那么压测时会使用同一个商品ID)。最后,通过统计 阅读全文
摘要:
除了运维团队对于机器CPU、内存、磁盘、网络等基础监控,还要完成应用程序对数据库的链接、服务报错异常、以及请求超时等问题能做到及时发现。 监控四个指标 分别是延迟,通信量、错误和饱和度。 延迟指的是请求的响应时间。比如,接口的响应时间、访问数据库和缓存的响应时间。 通信量可以理解为吞吐量,也就是单位 阅读全文
摘要:
来想象这样一个场景:你的垂直电商系统部署的IDC机房,在某一天发布了公告说,机房会在第二天凌晨做一次网络设备的割接,在割接过程中会不定时出现瞬间,或短时间网络中断。 机房网络的中断,肯定会对业务造成不利的影响,即使割接的时间在凌晨(业务的低峰期),作为技术负责人的你,也要尽量思考方案来规避隔离的影响 阅读全文
摘要:
API网关起到的作用(904) API网关(API Gateway)不是一个开源组件,而是一种架构模式,它是将一些服务共有的功能整合在一起,独立部署为单独的一层,用来解决一些服务治理的问题。你可以把它看作系统的边界,它可以对出入系统的流量做统一的管控。 在我看来,API网关可以分为两类:一类叫做入口 阅读全文
摘要:
负载均衡服务大体上可以分为两大类:一类是代理类的负载均衡服务;另一类是客户端负载均衡服务。 代理类的负载均衡服务,以单独的服务方式部署,所有的请求都要先经过负载均衡服务,在负载均衡服务中,选出一个合适的服务节点后,再由负载均衡服务,调用这个服务节点来实现流量的分发。 由于这类服务需要承担全量的请求, 阅读全文
摘要:
在分布式微服务的架构中,不同业务的项目之间通过RPC服务相互调用,方便了可扩展性,如下图 假如在某个时间节点某个接口请求出现了请求比较慢的问题,而整个接口的流程可能涉及到多个RPC服务之间的调用,那么该如何排查问题呢? 先说一下一体化架构的一贯方法 最简单的思路是:打印下单操作的每一个步骤的耗时情况 阅读全文
摘要:
通过RPC框架,能够解决服务之间,跨网络通信的问题,这就完成了微服务化改造的基础。但是在服务拆分之后,需要维护更多的细粒度的服务,面对的第一个问题就是,如何让RPC客户端知道服务端部署的地址,服务注册与发现的问题。 你所知道的服务发现服务注册和发现不是一个新的概念,比如说,Nginx是一个反向代理组 阅读全文
摘要:
在做了服务化拆分之后,把业务逻辑都拆分到了单独部署的服务中,那么假设在完成一次完整的请求时,需要调用4~5次服务,计算下来,RPC服务需要承载大概每秒10万次的请求。那么,你该如何设计RPC框架,来承载如此大的请求量呢?你要做的是: 选择合适的网络模型,有针对性地调整网络参数,以优化网络传输性能;选 阅读全文