• 服务吞吐量简单小模型


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

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

    类比一下:

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

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

    以上简单模型说明

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

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

    从服务请求方来看

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

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

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

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

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

    从服务处理方来看

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

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

  • 相关阅读:
    导航栏下拉至一定高度后固定在顶部的特效
    laravel表单中文错误提示本地化
    laravel模板使用
    网站测试用例
    sublime安装ctags用于追踪函数
    ecshop头部添加所在城市
    php 常用的redis操作语法
    mysql where与 having的区别
    mysql 列类型以及属性特点
    不错的博客链接
  • 原文地址:https://www.cnblogs.com/tlz888/p/15801389.html
Copyright © 2020-2023  润新知