tester
文章平均质量分 77
tester
longailk
这个作者很懒,什么都没留下…
展开
-
程序员练级攻略(2018)-陈皓-笔记整理
程序员练级攻略(2018) 开篇词 入门篇 零基础启蒙 正式入门 修养篇 程序员修养 专业基础篇 编程语言 理论学科 系统知识 软件设计篇 软件设计 高手成长篇 Linux系统、内存和网络(系统底层知识) 异步I/O模型和Lock-Free编程(系统底层知识) Java底层知识 数据库...原创 2022-03-09 15:41:07 · 8772 阅读 · 0 评论 -
程序员进阶攻略-笔记-051~061(完)
技术债务,有意或无意的选择 代码既是资产也是债务 技术债务:在程序设计与开发过程中,有意或无意做出的错误或不理想的技术决策,由此带来的后果,逐步累积,就像债务一样。 程序员经验的缺乏 公司没有鼓励程序员去关注技术债务,只是不断地生产完成需求的代码 技术债务分类 战略债务,是为了战略利益故意为之,并长期存在。公司或业务高速发展的阶段,主动放弃了一些技术上的完备与完美性,而保持快速的迭代与试错性。 特点是...原创 2022-01-30 10:30:52 · 472 阅读 · 1 评论 -
程序员进阶攻略-笔记-041~050
沟通之痛:如何改变 沟通,越发成为一件重要的事,至少和写代码同等重要;沟通清楚了,能让我们避免一些无谓的需求,少写不少无效的代码。 需求没沟通清楚,写出来的代码,即使没 Bug 将来也可能是负债。不是自己还就是别人来还。 1. 以理服人:对事不对人,切勿意气用事。 2. 以德服人:请公司所谓的经验丰富、德高望重的“老司机”来裁决 3. 以力服人:看双方部门老大或老大的老大,谁更有力或给力。 认识与改变:做出改变的第一步是要能认识到,否则改...原创 2022-01-28 14:08:28 · 459 阅读 · 0 评论 -
程序员进阶攻略-笔记-021~030
信息:过载与有效 “忙碌、充实而疲倦”的虚幻假象 在这个信息过载的洪流中,需要的就是在这股洪流中筛选信息并建立自己中流砥柱般的 “知识磐石”。 心智” 这两个字合在一起是一个意思,分开为 “心” 和 “智” 两个字又可以分别解释为:“心” 是你对需要的选择,从心出发;“智” 是对价值的判断,智力的匹配 应用:一击中的 储备了信息,建立了知识,最终都是为了应用。 囤积信息,学习知识,如果不能被应用在改变自己上,那还有什么意义? ...原创 2022-01-22 10:30:24 · 266 阅读 · 0 评论 -
程序员进阶攻略11-20笔记
三阶段进化:调试,编写与运行代码 阶段一:调试代码 Debugging 逐渐降低使用Debug 功能的频率 阶段二:编写代码 Coding “信、达、雅” 信,指不违背原文,不偏离原文,不篡改,不增不减,要求准确可信地表达原文描述的事实。 程序员需要深刻地理解用户的原始需求。虽然需求很多时候来自于需求(产品)文档,但需求(产品)文档上写的并不一定真正体现了用户的原始需求。 只有真正挖掘并...原创 2022-01-17 22:57:10 · 4502 阅读 · 0 评论 -
Linux性能优化实战笔记-055-分析性能问题的一般步骤
系统和应用是相辅相成、相互影响的。 系统是应用的运行环境,系统的瓶颈会导致应用的性能下降; 应用的不合理设计,也会引发系统资源的瓶颈。我们做性能分析,就是要结合应用程序和操作系统的原理,揪出引发问题的真凶。1. 系统资源瓶颈=========分析的关键是找关联 首先来看系统资源的瓶颈,这是最为常见的性能问题。通常使用 USE 法,即使用率、饱和度以及错误数这三类指标来衡量。其中 CPU、内存、磁盘和文件系统以及网络等,是最常见的硬件资源。 文件描...原创 2021-12-24 15:53:40 · 614 阅读 · 0 评论 -
玩转spring全家桶笔记-001-初识Spring
spring课程介绍 丁雪丰 美团研究员,《Spring Boot 实战》、《Spring 攻略》译者,腾讯云 TVP。 课程内容: 1. 初识Spring Spring家族的主要成员 跟着spring了解技术发展趋势 编写第一个Spring应用程序 2. 数据操作 JDBC必知必会 O/R mapping实战 ...原创 2021-12-14 11:17:38 · 614 阅读 · 0 评论 -
docker
Docker核心概念 镜像是一个只读的模板,类似于安装系统时用到的ISO 文件,通过镜像来完成各种应用的部署。 容器可以被启动、开始、停止、删除等,每个容器间都是相互隔离的。 仓库是一个存放镜像的场所,仓库分为公共仓库和私有仓库。最大的公共仓库是Docker hub (https://hub.docker.com/), 国内公共仓库是http://www.dockerpool.com/ 注意:镜像类似于操作系统,容器类似于虚拟机本身。 安装Dock...原创 2021-12-14 11:09:15 · 215 阅读 · 0 评论 -
文件系统笔记
概述术语模型方法:性能分析的方法===观察法和实验法工具:静态和动态工具调优概述 文件系统性能比磁盘性能更重要 文件系统通过缓存、缓冲以及异步IO等手段来缓和磁盘(或者远程系统)的延时对应用程序的影响。 术语: 文件系统: 一种把数据组织成文件和目录的存储方式,提供了基于文件的存取接口,并通过文件权限控制访问。 还包括一些表示设备、套接字和管道的特殊文件类型 以及包含文件访问时间戳的元数据。 文件系统缓存:...原创 2021-11-02 15:47:58 · 463 阅读 · 0 评论 -
docker容器化实战-笔记
Docker核心概念 镜像是一个只读的模板,类似于安装系统时用到的ISO 文件,通过镜像来完成各种应用的部署。 容器可以被启动、开始、停止、删除等,每个容器间都是相互隔离的。 仓库是一个存放镜像的场所,仓库分为公共仓库和私有仓库。最大的公共仓库是Docker hub (https://hub.docker.com/), 国内公共仓库是http://www.dockerpool.com/ 注意:镜像类似于操作系统,容器类似于虚拟机本身。 安装Dock...原创 2021-10-27 14:34:38 · 253 阅读 · 0 评论 -
PostgreSQL实战-010-性能优化
影响数据库性能的因素: 在硬件层面: CPU IO 内存 网络 在软件层面: 操作系统配置 中间件配置 数据库参数配置 运行在数据库之上的查询和命令 等 ......性能检测系统监控在进行系统性能优化时, 应当先着眼全局进行分析,再逐步深入到细节。PostgreSQL 数据库的SQL 服务器应用通常分为 OLTP...原创 2021-09-17 15:12:10 · 907 阅读 · 0 评论 -
POSTGRESQL实战-008-事务与并发控制【不完善】
事务与并发控制 当多个事务并发执行时,即使每个单独的事务都正确执行,数据库的一致性也可能被破坏。 为了控制并发事务之间的相互影响,解决并发可能带来的资源争用及数据不一致性问题,数据库的并发控制系统引入了: 基于锁的并发控制机制(Lock-Based Concurrency Control) 基于多版本的并发控制机制MVCC (Multi-Version Concurrency Control)。 事务和并发控制的概念 事务的基本概念和性质...原创 2021-09-03 13:17:56 · 409 阅读 · 0 评论 -
PostgreSQL实战-006-并行查询
PostgreSQL 9.6 版本前还不支持并行查询, SQL 无法利用多核CPU 提升性能,PostgreSQL 9.6 版本开始支持并行查询,只是9.6 版本的并行查询所支持的范围非常有限【只在顺序扫描、多表关联、聚合查询中支持并行】PostgreSQL 9.6 10 版本增强了并行查询功能,例如增加了并行索引扫描、并行index-only 扫描、并行bitmap heap 扫描等本章介绍的PostgreSQL 10的并行查询功能【6.1 并行查询相关的参数设置】 1. max_...原创 2021-09-02 11:49:55 · 1177 阅读 · 1 评论 -
高楼的性能工程实战课-011-打开首页--一个案例带你搞懂硬件设施的性能问题
打开首页--一个案例带你搞懂硬件设施的性能1. 看架构图:如果有工具直接展示更好,如果没有工具,建议我们画一画,方便以后分析,不要自信认为自己能记住框架的所有组件。2. 顺便看下代码逻辑,从代码中查看这个接口实现的逻辑,在做哪些动作,以及后续的链路。3. 确定压力数据: 这里我们就要思考一下了:如果想要执行一个场景,并且这个场景可以压出打开首页接口的最大 TPS,我们应该怎么设置压力工具中的线程数、递增策略和持续执行策略呢? 可以先拿10个线程试运行一下,一个线程最大达到 TPS ...原创 2021-08-27 10:43:13 · 2248 阅读 · 0 评论 -
高楼的性能工程课-010-设计基准场景
基准场景 基准场景是为了找到系统中明显的配置及软件 Bug 线程数应该如何确定? 压力线程的连续递增的重要性 如何分析 性能场景分类: 验证:评估当前系统容量;针对当前的系统、当前的模型、当前的环境,验证一下版本是否有性能的变化。不性能分析,不调优。 基准场景 容量场景 稳定性场景 异常场景 调优:评估并优化...原创 2021-08-26 15:13:59 · 296 阅读 · 0 评论 -
高楼性能工程实战课-008-并发、在线和TPS
并发、在线和TPS RT:容忍度 并发:并发是在单位时间内完成的事务(T)的个数。如果这个事务(T)是用户的操作,那就是并发的用户了。 事务的级别: 1. 请求级别的TPS:按接口请求计算,比如整个登录下单支付退出过程调用100个接口 用户数 * 接口请求数100 / 操作时间 2. 单业务操作级别:比如登录、下单、支付,7个业务 用户数 * 业务数7 / 操作时间 3. 用户级别:1个用...原创 2021-08-24 16:39:33 · 1274 阅读 · 0 评论 -
高楼的性能工程实战课-009-全局监控&定向监控
性能监控数据不足导致没有分析的证据链,真正的性能分析,从现象到结论,必须有完整的分析链路。监控层级: 全局监控 定向监控 设计监控策略 1. 分析架构,通过分析架构,确定要监控的点。 操作系统级【k8s的master/node节点】 Java微服务 数据库(MysQL) 链路跟踪APM RabbitMQ Redis 日志监控ELFK Kuber...原创 2021-08-24 11:25:11 · 1387 阅读 · 0 评论 -
性能工程实战课-007-场景数据
场景数据 在 RESAR 性能工程中,场景里使用的数据需要满足两个方面: 第一,数据要符合真实环境中的数据分布,因为只有这样,我们才能模拟出相应的 IO 操作; 第二,要符合真实用户输入的数据,以真正模拟出真实环境中的用户操作。 这两个方面分别对应着两类数据:铺底数据和参数化数据。 铺底数据 系统中用到的数据分为两部分: 静态数据(图中红色点)===图片等 静态数据通常有两个可以存放的地...原创 2021-08-19 15:32:34 · 262 阅读 · 0 评论 -
性能工程实战课-006-业务模型
业务模型 在容量场景中,每个业务比例都要符合真实业务场景的比例。如果不符合,那场景的执行结果也就没有意义了。 做场景时首先要明白,当前的场景是要模拟历史业务场景,还是未来业务场景。 如果是未来的业务场景,那就要靠业务团队给出评估,而非性能团队。 如果一个系统有历史业务数据,那我们获得业务模型就有背景数据了 抽取生产业务日志是为了得到对应的业务比例 大体上来说,抽取真实业务模型有两个大步骤...原创 2021-08-19 14:04:36 · 120 阅读 · 0 评论 -
高楼的性能工程实战课笔记-005-性能方案
传统测试方案: 常规项目信息:比如说测试背景、测试范围、测试准则、测试环境、实施准备、组织结构、项目风险、里程碑。 性能实施信息:比如说测试模型、测试策略、监控策略。 项目输出:比如说测试脚本、测试用例/测试场景、监控采集数据,测试报告、调优报告。工程级完整测试方案 背景 项目背景 性能目标 测试范围 需要测试的特性 不需要测试的特性 准则 启动准则 结束准则...原创 2021-08-18 15:13:29 · 1891 阅读 · 0 评论 -
性能工程实战课-031-怎么写出有价值的性能报告?
性能报告&测试汇报 性能报告表达的是业务系统的性能结论 性能报告是一个性能项目的总结,是性能价值的最终体现 “三分干活七分报告”,也就是说干活的辛苦都是留给自己体会的,报告如果做得不好,你再累、再辛苦,所有的付出都会付诸东流。 给老板做汇报,简明扼要即可,不用写那么花哨。 我们的报告不是用来展现自己做得有多么辛苦,也请你务必牢记这一点。 1. 先确定受众,再写性能报告【要先考虑清楚,报告是给谁看,这一点至关重要。给领导看,...原创 2021-08-17 16:16:29 · 153 阅读 · 0 评论 -
高楼的性能工程实战课笔记-004-性能分析决策树&证据链
如何构建性能分析决策树? 性能分析决策树在性能监控设计和性能瓶颈分析时都会被使用,并且在性能瓶颈分析时,我们必须要有决策树的思路。 什么是性能分析决策树呢? 性能分析决策树是包括了系统架构中所有技术组件、所有组件中的模块以及模块对应计数器的完整的结构化树状图。 组件===》模块===》计数器 如何构建性能分析决策树? 构建性能分析决策树是我们了解一个系统非常关键的环节,总体来看,它分为 4 个...原创 2021-08-17 14:57:54 · 1365 阅读 · 0 评论 -
性能工程实战课-002&003-性能指标|性能场景|性能分析
需求性能指标 明确性能需求是一个关键点,我们要明确在什么样的业务压力场景下要求这样的指标。 平均值 标准方差---毛刺 没有业务指标就没有技术指标,我们的工作就是让 业务指标(比如并发用户数、在线用户数等) 和 技术指标(比如 CPU、IO 等)对应起来。 在不同的性能场景中要定义好不同的性能需求指标,有些是自己看的,有些是给别人看的。 性能场景 性能场景: 基准场景...原创 2021-08-17 12:46:05 · 241 阅读 · 0 评论 -
高楼的性能工程实战课笔记-001-RESAR 性能工程
RESAR 性能工程, RESAR 性能工程是对性能项目过程中的各个具体的动作做更详细的描述,使之可以成为可以落地的具体实践。 【性能测试】 性能测试是针对系统的性能指标,建立性能测试模型,制定性能测试方案,制定监控策略,在场景条件之下执行性能场景,分析判断性能瓶颈并调优,最终得出性能结果来评估系统的性能指标是否满足既定值。 性能项目是有宏观目标的: 1. 找到系统中的性能瓶颈并优化掉; 2. 满足业务容量的要求,保障线上系统可以正常运行。...原创 2021-08-17 10:02:57 · 2469 阅读 · 0 评论 -
TDD
TDDTDD的T容易让人误解,TDD不是测试方法,而是开发设计方法。其主要目标是提供可测试的代码设计,测试只是一项有用的副产品。1、先测试 因为是先测试,所以测试一定会失败(遇红),然后编写代码让测试通过,哪怕是通过作弊手段(写死)(变绿),然后继续编写测试发现其不合理部分(代码异味),然后重构(不增加测试,不增加功能,只改善代码),重构后继续运行测试2、小步快跑。做遵从测试山羊的教诲,每次修改...原创 2018-03-07 09:39:25 · 1104 阅读 · 0 评论