美文网首页
如何评估线上系统的容量? (三)

如何评估线上系统的容量? (三)

作者: rockops | 来源:发表于2016-12-26 21:00 被阅读95次

5 环境准备

我们的系统,分层架构如下,

接入层(lvs, nginx等load balancer)
业务层(tomcat, apache, jetty等)
核心层(核心逻辑层,为上层提供数据)
数据层(数据库、缓存、分布式存储等)

一般情况下,我们会选择在接入层进行压测,压测的覆盖面会更全面一些。不过可根据具体的业务场景进行调整。

考虑到单独搭建一套专供压测的环境比较复杂,实际场景中经常会使用预上线的环境作为压测的环境。
需要注意:为避免压测对线上系统造成影响,所有压测环境以及相关联的服务全部都不能是线上的。在准备压测环境的时候,尤其需要重点排查下。比如,数据库、缓存、其他基础组件、第三方服务等。

对于需要登陆的系统,需要考虑到权限校验的逻辑是否影响对复制流量的处理。比如,登陆时把session相关信息存在redis集群中(本质上是有一些状态数据),后续请求中有根据sessionId验权,那么在压测环境中要想正确处理,有两个方案解决,

  1. 压测环境代码中,去除校验请求中验权的逻辑,以及可能要根据session去获取userId等id信息,都需要在代码中进行修改。(改动量大,分散)
  2. redis做数据同步,将线上redis数据同步至预上线环境,去除登陆时写redis的逻辑,相当于读到了“线上”的数据。

同样,对于数据库或其他有状态的数据,我们也希望尽量保持一致,可以在压测之前做一份数据,以保证大部分的拷贝流量都是“真实”的。

相关文章

  • 如何评估线上系统的容量? (三)

    5 环境准备 我们的系统,分层架构如下, 接入层(lvs, nginx等load balancer)业务层(tom...

  • 如何评估线上系统的容量? (一)

    1 背景 某年某月的某一天,有这样的一段对话: 老板: 咱们线上容量是多少?小强: 额,不太清楚老板: N天后,我...

  • 如何评估线上系统的容量? (二)

    4 tcpcopy 4.1 原理 TCP/IP四层网络模型| 应用层 | HTTP, FTP, ... || 传输...

  • route add报错SIOCADDRT: Network is

    在如何评估线上系统的容量? (二)中我写过,对于target server应该增加一条去往assistant se...

  • 如何评估、预测系统的QPS

    [TOC] 如何评估、预测系统的QPS 容量评估按照5倍冗余计算 系统架构设计背景 当我们在设计一套系统的时候,我...

  • Web系统性能指标

    引言 性能评估是进行系统设计以及系统优化的重要事项,进行正确地性能评估才能有效地规划系统容量,保证系统地稳定运行。...

  • 有货如何应对双十一

    本文从全网系统架构,部署组网梳理,全链路压测和容量评估,限流,降级和超时,如何防爬、防刷,动态配置,性能优化如何做...

  • Linux篇:df与du查看磁盘空间大小

    df:列出文件系统的整体磁盘使用量; du:评估文件系统的磁盘使用量(常用于评估目录所占容量) df参数: -a:...

  • Evaluation of Maching Learning

    模型的评估分线上评估与线下评估,如何来对模型进行线上评估与线下评估呢?它们之间又有什么关系 首先怎么区别它们: 首...

  • (2)全链路压测<架构解决方案>

    目的:评估机器扩容量、验证是否可支撑峰值 关键核心点:1)系统、中间件如何配合改造升级 2)构造、隔离压测数据3...

网友评论

      本文标题:如何评估线上系统的容量? (三)

      本文链接:https://www.haomeiwen.com/subject/bqfsvttx.html