首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

性能测试-性能测试指标

(服务器), 越来越多的顾客(用户)过来理发 Light Load: 师傅多客少;理发师还有空抽个烟,刷个手机;顾客来了就剪,剪完就走,体验不错 Heavy Load: 师傅少客多;理发师虽然忙个不停,...但仍然井井有条; 顾客等待的时间越来越长 Buckle Zone: 师傅少客人贼多; 理发师开始安抚等待的客人维持秩序, 剪发的效率下降; 顾客等待的时间指数级增长, ,而且没板凳坐,不满得喊理发师搬板凳...评级 <70% <30% 好 70%-90% 30%-60% 一般 >90% > 60% 差 性能分析 操作系统为了最大化利用内存,一般都设置大量的 cache,因此,内存利用率高达 99%并不是问题...,内存的问题主要看某个进程占用的内存是否非常大以及是否有大量的swap(虚拟内存交换)。...服务器或服务器集群 单位时间内 处理请求的数量 服务器集群 一般指多个提供相同服务的服务器的集合; 不同服务的服务器集群应该分开统计 监控方式 grafana工具监控 手动监控-日志 开发修改代码

32110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    当“码农”遇上 Tony 老师:程序员理发时都在想些什么?

    “嗯嗯好的没问题!” “咔嚓!” “?!” “您好,办卡消费 2888,欢迎下次光临!” 在 Tony 老师的一阵操作猛如虎里,我们收获了一个和预期效果迥异的意识流发型。...要说这理发师与他的职业是多么相似啊!石磊是一名资深程序员,虽然他的职称距离“总监”的路程比理发师远得多的多。 产品经理提需求,程序员根据需求开发写代码;而理发师也是根据前来理发的顾客提出的要求动剪子。...程序员敲代码时“啪啪啪”,理发师剪发时“咔嚓咔嚓”。程序员敲完一个模块,便要做个单元测试一下功能;理发师剪完某个部位便要对着镜子打量一下成果。...石磊把埋怨收进心底,尽量温声细语地对理发师说。 程序员在产品经理的催促下,只能硬着头皮改代码继续优化;理发师在顾客的埋怨下,讨好似的拿起剪刀做进一步的修剪。...找到一个靠谱的理发师比招到一个靠谱的程序员要难得多! 只有被剪坏的头型,没有被敲坏的代码。偶尔个别不靠谱的程序员写出了烂代码,起码还能找个厉害的来替他收拾残局。

    76630

    05-Java NIO 编程 零拷贝 与 AIO

    我们分析mmap和sendFile这两个零拷贝 另外我们看一下NIO中如何使用零拷贝 传统IO数据读写 Java传统IO和网络编程的一段代码 传统IO模型 DMA : direct memory access...mmap 通过内存映射, 将文件映射到内核缓冲区,同时 用户空间可以共享内核空间的数据, 这样,在进行网络传输时, 就可以减少内核空间到用户空间的拷贝次数,如下图 mmap示意图 sendFile 优化 Linux...数据根本不经过用户态,直接从内核缓冲区进入到Socket Buffer ,同时, 由于和用户态完全无关, 就减少了一次上下文切换 示意图和小结 提示: 零拷贝从操作系统角度, 是没有CPU拷贝的 Linux...一般适用于连接数较多,且连接时间较长的应用 目前AIO还没有广泛应用,Netty也是基于NIO,而不是AIO,因此就不在这里讲AIO了,有兴趣的可以链接一下 <<Java 新一代网络编程模型AIO原理及Linux...异步非阻塞: 给理发师打电话,让理发师上门服务,自己干其他事情,理发师上门通知,来你家给你理发 NIO完结撒花花

    35150

    提了这么多年的面向对象,你真的懂它的含义吗?

    面向过程的编程方法,注重解决问题的每一个步骤,并实现对应功能。 比如,我们要完成一天的任务清单,今天的任务包括理发、打扫卫生、搬家。于是我们开始按照顺序,对每个步骤进行实现。...这样编写好的代码,都线性的堆在一起,那下次如果再想理发、打扫卫生、搬家,那之前的代码怎么复用呢? 我们这时,想到了函数的封装。...因为我们使用的是面向过程的编程思路,出发点是注重怎么样一步一步的解决这个问题。 于是问题解决完成,功能实现,大量的线性代码已经写完后,再去想怎么封装优化。...但我们在寻求理发师的帮助时,不会直接向这个"职业"直接发起请求,因为它本身就是一个抽象,理发师那么多?你找的是哪一个? 我们要找的是某一个从业者,比如理发师张三。...而使用面向对象实现的代码,更容易复用,因为我们在写代码时,目的就是更好的封装,高内聚低耦合。 当然,这两种编程方式没有优劣之分。

    49310

    Java 零拷贝_java clone 深拷贝

    消除传输数据在存储器之间不必要的中间拷贝次数,从而有效地提高数据传输效率 零拷贝技术减少了用户进程地址空间和内核地址空间之间因为上:下文切换而带来的开销 传统的IO数据读写 如下的例子,Java传统IO和网络编程的一段代码...可见使用mmap进行IO,进行了3次拷贝,进行了3次上下文切换 Linux支持的零拷贝 1.sendfile linux 2.1支持的sendfile 当调用sendfile()时,DMA将磁盘数据复制到...sendfile会经历:3次拷贝,1次CPU copy 2次DMA copy,以及2次上下文切换 提示 – 零拷贝是从操作系统角度来看的,是指没有CPU拷贝 Linux在2.4版本中,做了一些修改...AIO的比较 BIO NIO AIO IO模型 同步阻塞 同步非阻塞(多路复用) 异步非阻塞 编程难度 简单 复杂 复杂 可靠性 差 好 好 吞吐量 低 高 高 1.同步阻塞:到理发店理发,一直等待理发师...,直到轮到自己 2.同步非阻塞:到理发店理发,发现前面有其它人理发,给理发师说下,先干其它的事情,一会儿过来看是否轮到自己 3.异步非阻塞:给理发师打电话,让理发师上门服务,自己干其它事情,理发师自己来给你理发

    75120

    软件性能测试(连载2)

    案例3-7:理发师模型 理发师模型是经典的解释吞吐率与响应时间的模型。比如有一家理发馆,里面有3名理发师,每个理发师水平相当,每给一位顾客理发需要10分钟的时间,如表3-1所示。...表3-1理发师模型 设置并发数总响应时间平均响应时间实际并发数110分钟×1=10分钟10分钟/1=10分钟1210分钟×2=20分钟20分钟/2=10分钟2310分钟×3=30分钟30分钟/3=10分钟...… 图3-8和图3-9分别是理发师模型平均响应时间、实际并发数与设置并发数对应曲线。 ? 图3-8 理发师模型平均响应时间与设置并发数对应曲线图 ?...如果要提高性能从硬件上考虑可以增加理发师,从软件上考虑可以加强理发师水平,减少给每一位顾客理发的时间。 3....关于Linux性能计数器的问题Linux性能监控中结合命令行进行讨论,将在第2.2节中进行详细描述。

    1.1K20

    Linux问题汇总

    ^M: bad interpreter: No such file or directory 经过查阅资料才知道,这是文件格式导致的问题:使用vi/vim进入该shell文件,按下:进入末行模式,输入...判断网络是否连通 有个通用命令,Windows和Linux都能使用,如下: ssh ip -v -p port -v表示调试模式,会打印出具体日志。-p表示端口号。...的时区 查看当前时区 date -R 修改设置Linux服务器时区 // Linux通用 tzselect // 仅限于RedHat Linux 和 CentOS timeconfig // 适用于...Debian dpkg-reconfigure tzdata 复制相应的时区文件,替换系统时区文件;或者创建链接文件 // Linux通用 tzselect // 仅限于RedHat Linux 和...新建一个~/.vimrc文件,在文件中添加一行代码: set noswapfile 这样该配置就只会对当前用户生效,你也可以直接修改/etc/vimrc文件,效果是一样的。

    1.2K20

    CodeReview常见代码问题

    常见代码问题 常见的潜在代码问题是当前直接会导致BUG、故障或者产品功能不能正常工作的类别。 空值 空值恐怕是最容易出现的地方之一。 常见错误有: a. 值为NULL导致空指针异常; b....单测问题 单测是保证工程质量的第一道重要防线。单测问题一般包括: a. 单测未全部通过; b. 重要业务逻辑缺乏单测; c. 缺乏异常单测; d. 代码变更或BUG修复缺乏单测。...缺乏异常单测也是代码提交者常忽略的问题。 异常也是一种实际的业务场景,反映系统的健壮性和友好性。异常应该有相应的单元测试覆盖。...“魔数”与重复代码类似,当前或许不会引发问题,时间一长,为了弄清楚其代表的含义,增加很多沟通维护成本,且分散在各处很容易导致修改的时候遗漏不一致。务必清清除。...并发 并发的问题更难检测、复现和调试。常见的问题有:a. 在可能由多线程并发访问的对象中含有共享变量却没有同步保护;b. 在代码中手动创建缺乏控制的线程或线程池;c.

    93400

    操作系统:经典进程同步问题的高级探讨

    ✨✨ 经典进程同步问题 1.生产者—消费者问题 如果一个进程能产生并释放资源,则该进程称做生产者;如果一个进程单纯使用(消耗)资源,则该进程称做消费者。...2.读者—写者问题 读者-写者问题也是一个著名的进程互斥访问有限资源的问题。例如,一个航班预订系统有一个大型数据库,很多竞争进程要对它进行读、写。...方法(1)的算法描述如下: 4.打瞌睡的理发师问题 问题描述:理发店有一名理发师、一把理发椅和几把座椅,等待的理发者可以坐在座椅上。如果没有顾客到来,理发师就坐在理发椅上打盹。...当顾客到来时,就唤醒理发师。如果顾客到来时理发师正在理发,该顾客就坐在椅子上排队;如果满座了,他就离开这个理发店,到别处理发。 利用信号量机制为理发师和顾客各编写一段程序,描述他们的行为。...打瞌睡的理发师问题示意图 分析其中的互斥和同步关系: 理发师和顾客是同步关系 椅子是临界资源,应互斥使用 理发师和每位顾客都分别是一个进程。 希望对你有帮助!加油!

    14010

    codeReview常见代码问题

    codeReview常见代码问题 ?...路线图   常见代码问题   空值   未捕获潜在的异常   低性能   影响范围过大   单测问题   与原有业务逻辑不兼容   缺乏必要日志   错误码不符合规范   参数检测缺乏或不足   引用错误...代码层次不合理   不用多余的代码   使用全局变量   缺乏必要的注释   更难发现的错误   并发   资源泄露   事务   SQL问题   安全问题   设计问题   较轻微的问题   命名不贴切...  代码与文档不一致   使用冷僻用法或奇淫巧技 常见代码问题 常见的潜在代码问题是当前直接会导致BUG、故障或者产品功能不能正常工作的类别。...单测问题   单测是保证工程质量的第一道重要防线。单测问题一般包括: a. 单测未全部通过; b. 重要业务逻辑缺乏单测; c. 缺乏异常单测; d. 代码变更或BUG修复缺乏单测。

    1.3K30
    领券