• 服务吞吐量简单小模型


    问:简单假设一个服务的处理并发量为CPA, 每个请求的平均处理时间为rpt,则单位时间内的处理吞吐量为多少? 

    答:单位时间内,单个处理线程(worker)的处理量为1/rht,则总的吞吐量为 CPA/rpt。

    类比一下:

    假设某个红绿灯路口有CPA个车道,每辆车的平均通过时间为rpt,则单位时间内能通过路口的汽车数量为多少?

    单位时间内一个车道的通车量为1/rpt,这个路口有CPA个车道,则总的通车量为CPA/rpt。

    以上简单模型说明

    1)在服务处理并发量一定时,每个请求的平均处理时间越长,吞吐量越差

    越可能出现一些请求长时间等待而得不到处理的情况,请求等待超时乃至放弃的情况越容易发生

    从服务请求方来看

    2)当出现请求超时的情形时,首先想到的是减少请求次数,但更应该想到的是降低单个请求的处理时间,比如是否可以优化

    3)当出现请求超时的情形时,除了优化单个请求的处理时间外,也可以考虑把一个请求分解为多个,这样服务可以见缝插针地处理其他请求。

      就比如路人甲上午去银行营业厅办事,如果有几位业务超复杂的人排在路人甲前面,那他想要在上午办完业务估计没戏了;

    4)请求在发送的时间上不要过于集中,错峰出行,体验更佳,哈哈;

    5)最后一招,延长等待超时时间,耐心等吧;

    从服务处理方来看

    6)增加处理并发量CPA,可以增加吞吐量;

    7)降低请求的处理时间,也可以增加吞吐量,比如:增加单个worker(如线程)的处理能力,或者优化数据查询时间等

  • 相关阅读:
    Redis 配置连接池,redisTemplate 操作多个db数据库,切换多个db,解决JedisConnectionFactory的设置连接方法过时问题。(转)
    Spring Boot 中初始化资源的几种方式(转)
    关于RedisTemplate和StringRedisTemplate(转)
    @PostConstruct
    Python % 格式化字符串
    逻辑回归模型
    python 常用内置函数
    HIVE: collect_set(输出未包含在groupby的字段);
    HDFS文件和HIVE表的一些操作
    Linux 传输文件
  • 原文地址:https://www.cnblogs.com/tlz888/p/15801389.html
Copyright © 2020-2023  润新知