MySQL运维36-排队论

news2024/11/14 13:57:44

文章目录

  • 1、排队模型
  • 2、什么是排队论
  • 3、李特尔法则(Little’s law)
    • 3.1、李特尔法则的内容
    • 3.2、李特尔法则的意义
  • 4、肯德尔排队表示法
    • 4.1、肯德尔表示法的核心要素A/S/m
    • 4.2、肯德尔表示法中对顾客达到分布的表示:
    • 4.3、用肯德尔表示法表示的常见排队模型
  • 5、总结

1、排队模型

  1. 排队:通常为了得到某种服务必须排队。有一类排队是有形的,例如在售票处等待买票的排队,加油站前汽车等待加油的排队等;还有一类排队是无形的,例如电话交换机接到的电话呼叫信号的排队,等待计算机中心处理机处理的信息的排队等。
  2. 顾客:为了叙述的方便,排队者无论是人、物或信息,以后都统称为“顾客”。
  3. 服务台:服务者无论是人或事物,例如一台电子计算机也可以是排队系统中的服务者,以后都统称为“服务台”,服务台用于服务队列中的顾客,可以多个服务台并发工作。

2、什么是排队论

  • 排队论也称为随机服务系统理论、排队理论,是数学运筹学的分支学科。它是研究服务系统中排队现象随机规律的学科。排队论广泛应用于电信、交通工程、计算机网络、生产、运输、库存等各项资源共享的随机服务系统和工厂、商店、办公室、医院等的设计。
  • 顾客总是希望服务机构越大越好,但是如果服务机构过大,人力和物力方面的开支就会相应地增加,从而就会造成浪费,因此研究排队模型的目的就是要在顾客需要和服务机构的规模之间进行权衡和决策,使其达到合理的平衡。
  • 在计算机领域,许多软硬件组件都可以模型化为排队系统。我们可以使用排队理论分析排队现象,分析队列的长度、等待时间、利用率等指标。

3、李特尔法则(Little’s law)

3.1、李特尔法则的内容

  1. 李特尔法则其实是一个公式,用来计算一个系统的平均请求数。
  2. 李特尔法则可以用如下公式来表示:L=λW。即 平均访问请求数 = 平均到达速率 × 平均服务时间。比如,我们有一个系统,平均到达速率是10000次请求/s,每个请求需要花费0.05s来处理,即平均服务时间为0.05s,那么根据李特尔法则,服务器在任何时刻都将承担10000×0.05=500个请求的业务处理。

3.2、李特尔法则的意义

李特尔法则其实为我们改善服务器并发响应给出了思路:如果过了一段时间,由于客户端流量的上升,并发的访问速率达到了20000次请求/s,这种情况下,我们该如何改进系统的性能呢?根据李特尔法则,我们有如下两种方案:

  • 提高服务器的并发处理能力,即20000×0.5=1000。
  • 减少服务器的平均服务时间,即W=L/λ=500/20000=0.025s。

4、肯德尔排队表示法

4.1、肯德尔表示法的核心要素A/S/m

  • 可以用肯德尔表示法来对排队系统进行分类,肯德尔表示法可使用如下的简化形式:A/S/m
    • A:到达的规则,即到达的时间间隔的分布,可能是随机的、确定型的或泊松分布等其他分布方式。
    • S:服务规则,即指服务时间的分布,可能是固定的或指数的等其他分布方式。
    • m:服务台个数,一个或多个。

4.2、肯德尔表示法中对顾客达到分布的表示:

  • 表示顾客到达的间隔时间和服务时间的分布常用的约定符号分别如下。
    • M:指数分布,在概率论和统计学中,指数分布(Exponential Distribution)是一种连续概率分布。指数分布可以用来表示独立随机事件发生的时间间隔,比如旅客进机场的时间间隔、中文维基百科新条目出现的时间间隔,等等。
    • D:确定型(Determini stic)。
    • G:一般(General)服务时间的分布。

4.3、用肯德尔表示法表示的常见排队模型

一些常见的排队系统模型具体如下:

  • M/M/1:表示顾客相继到达的间隔时间为指数分布、服务时间为指数分布、单服务台。
  • M/M/c:表示顾客相继到达的间隔时间为指数分布、服务时间为指数分布、多服务台。
  • M/G/1:表示顾客相继到达的间隔时间为指数分布、服务时间为一般服务时间分布、单服务台。
  • M/D/1:表示顾客相继到达的间隔时间为指数分布、服务时间为确定型时间分布、单服务台。比如我们的旋转磁盘可用此模型进行分析。

5、总结

  1. 用排队模型可以对MySQL等系统的性能进行建模,排队模型主要有顾客(排队者)和服务台(服务者)这两个核心要素。
  2. 李特尔法则:平均请求数 = 平均到达速率 × 平均服务时间。根据李特尔法则,我们要想调节其中一个变量,就需要变动另外两个变量。
  3. 可以用肯德尔表示法来表示常见排队模型,主要包括A/S/m三个要素,分别为到达规则、服务规则和服务台数量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/453745.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

day03_注释丶关键字丶标识符丶常量

​注释 注释的概念:在编写程序的过程中,对程序代码进行解释说明。 代码本身和人类的自然语言相比,可读性肯定是要差一些,所以为了更快能够知道代码的含义、作用、需要注意地方,所有程序员都应该养成写注释的好习惯。 …

【安卓源码】Binder机制1-Servicemanager 进程的启动和defaultServiceManager

1. servicemanager 进程的启动 对于用户空间,不同进程之间彼此是不能共享的,而内核空间却是可共享的。Client进程向Server进程通信,恰恰是利用进程间可共享的内核内存空间来完成底层通信工作的,Client端与Server端进程往往采用io…

Linux客观题错题笔记

目录 第一章课后测试 课堂测试一 课堂测试2 第二次课后测试 课堂测验4 第4次课后作业 Linux 课堂测试5 第五次课后测试 自测一 实验疑难点 第一章课后测试 a 课堂测试一 d 课堂测试2 bb 第二次课后测试 a , b c,d,c 课堂测验4 a 第4次课后作业 c.dc,c Lin…

自动化测试系列-Selenium三种等待详解

一. 强制等待 sleep 在华为工作了10年的大佬出的Web自动化测试教程,华为现用技术教程!_哔哩哔哩_bilibili在华为工作了10年的大佬出的Web自动化测试教程,华为现用技术教程!共计16条视频,包括:1. 【web自动…

[POJ - 1015]Jury Compromise(01背包问题)

[POJ - 1015]Jury Compromise(01背包问题) 一、问题二、分析1、状态表示2、状态转移3、方案输出 三、代码 一、问题 二、分析 这道题可以转化为一个01背包问题,问题描述可以改为,每个物品具有两个属性 a a a和 b b b,…

异构系统的事务统一处理模型Saga

承接上文分布式事务Seata-TCC事务模式 Saga事务模式相对来说是最复杂的,用的不多,只需要把概念理解透就可以了。 Saga是Seata提供的长事务解决方案,在业务流程中每个参与者都提供本地事务,当出现某个参与者失败的情况则补偿前面已…

如何设计一个牛逼的API接口

在日常开发中,总会接触到各种接口。前后端数据传输接口,第三方业务平台接口。一个平台的前后端数据传输接口一般都会在内网环境下通信,而且会使用安全框架,所以安全性可以得到很好的保护。这篇文章重点讨论一下提供给第三方平台的…

[自注意力神经网络]Mask Transfiner网络-论文解读

本文为CVPR2022的论文。国际惯例,先贴出原文和源码: 原论文地址https://arxiv.org/pdf/2111.13673.pdf源码地址https://github.com/SysCV/transfiner 一、概述 传统的Two-Stage网络,如Mask R-CNN虽然在实例分割上取得了较好的效果&#xff…

OSCP-Twiggy(ZeroMQ、SaltStack)

目录 扫描 ​编辑WEB 扫描 WEB 80端口 运行着一个名为Mezzanine的东西。快速的谷歌搜索显示这是一个内容管理系统,所以让我们看看它是否对任何可以在我们的目标机器上获得shell的东西都是脆弱的: mezzanine版本是4.3.1,并且此漏洞已在4.2.1中修补。 searchsploit没有返回…

说说MySQL中MVCC机制的原理

一、概述: 了解了MySql的底层架构后,我们今天要深入了解下什么是MVCC。 MVCC,全称Multi-Version Concurrency Control,即多版本并发控制。MVCC是一种多并发控制的方法,一般在数据库管理系统中,实现对数据…

NAS私有云存储 - 搭建Nextcloud私有云盘并公网远程访问

文章目录 摘要视频教程1. 环境搭建2. 测试局域网访问3. 内网穿透3.1 ubuntu本地安装cpolar3.2 创建隧道3.3 测试公网访问 4 配置固定http公网地址4.1 保留一个二级子域名4.1 配置固定二级子域名4.3 测试访问公网固定二级子域名 转载自内网穿透工具的文章:使用Nextcl…

LVS负载均衡集群

引言 如今,在各种互联网应用中,随着站点对硬件性能、响应速度、服务稳定性、数据可靠性等要求也越来越高,单台服务器也将难以无法承担所有的访问需求。 一、群集的含义 集群、群集 由多台主机构成,但对外,只表现为一…

ubuntu-18.0.04 鸿蒙HarmonyOS系统源码(HOSP)下载

最近小编在研究鸿蒙开发,想要研究下鸿蒙源码,这里记录下源码下载中遇到的问题及解决,也为HarmonyOS的生态的建设提供下帮助,希望能帮到需要的人。 前置步骤:如果你之前下载过AOSP源码,那这里下载鸿蒙源码应…

第五章-数字水印-2-原理及实现

数字水印原理 根据之前图像获取位平面的操作可知,最低位位平面对整体图像的影响最小,因此数字水印的原理为在图像的最低有效位上嵌入隐藏信息,即在图像的最低位替换为数字水印位平面,完成数字的嵌入操作,对已嵌入数字…

Jenkins+Python自动化测试持续集成详细教程(全网独家)

目录 一、前言 二、环境准备 三、创建Jenkins Job 四、编写Python自动化测试脚本 五、测试报告生成与展示 六、持续集成流程优化 七、实战演练 八、常见问题及解决方案 九、结论 一、前言 Jenkins是目前最为流行的CI/CD工具之一,它可以支持多种语言和技术…

如何使用ffmpeg给视频减震去抖

之前自己发过一些记录仪拍下来的画面,你们可能已经看过了,例如: 最适合骑行的罐装饮料 然而,自己这个骑行记录仪,仅仅是很低端的一款,防抖功能很差,远远比不了GoPro那些高端的户外运动记录仪&am…

使用PCL滤波器实现点云裁剪

主要目的就是根据已知的ROI区域,对点云进行裁剪。要么留下点云ROI区域,要么去除。 ROI区域一般都是一个矩形,即(x,y,width,height)。 那么封装的函数形式一般如下: pcl:…

《死锁》与《CAS ABA》问题

文章目录 什么是死锁常见死锁情况❗️死锁的必要条件❗️如何避免死锁呢?CASCAS中ABA问题解决ABA问题 什么是死锁 死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象 。 常见死锁情况❗️ 1.一个线程一把…

Java-static那些事儿

static作为java中基础常用的关键字,通常用于修饰内部类,方法和变量和代码段,且具有以下特性: static修饰内部类时,该类属于静态内部类,其只能访问外部的静态变量和方法static修饰方法时,该方法…

ROS学习第三十七节——机器人运动控制以及里程计信息显示

https://download.csdn.net/download/qq_45685327/87719766 https://download.csdn.net/download/qq_45685327/87719873 gazebo 中已经可以正常显示机器人模型了,那么如何像在 rviz 中一样控制机器人运动呢?在此,需要涉及到ros中的组件: ros…