自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 mysql5.7正则匹配空白

发现还真的不支持,官方推荐的是 [[:blank:]]空格, [[:space:]]Space, tab, newline, and carriage return。参考官方文档:https://dev.mysql.com/doc/refman/5.7/en/regexp.html#regexp-syntax。很遗憾,查询到的结果和实际观察整张表的有很大出入,开始怀疑sql哪里写错了,于是我又开始查看没有匹配到的数据到底有啥特点?切记,在中文环境下,注意中英文之间的差异!发现,果然不出所料!

2023-12-27 18:47:09 479

原创 使用file批量检测图片的分辨率

说明:部分文件使用file获取到的分辨率有的 类似1x1,有的类似1 x 1,有的类似 1 x 1,因此使用正则匹配。#避免结果分两行打印分割开了文件名和分辨率,因此使用echo将其打印在一行。

2023-12-01 18:57:58 476

原创 shell检查pdf文件是否损坏

pdftk

2023-05-16 15:59:55 267

原创 centos7安装

centos安装 & nmcli连接wifi

2022-10-18 14:41:51 357 1

原创 程序员练级攻略(2018)-陈皓-笔记整理

程序员练级攻略(2018) 开篇词 入门篇 零基础启蒙 正式入门 修养篇 程序员修养 专业基础篇 编程语言 理论学科 系统知识 软件设计篇 软件设计 高手成长篇 Linux系统、内存和网络(系统底层知识) 异步I/O模型和Lock-Free编程(系统底层知识) Java底层知识 数据库...

2022-03-09 15:41:07 8659

原创 程序员进阶攻略-笔记-051~061(完)

技术债务,有意或无意的选择 代码既是资产也是债务 技术债务:在程序设计与开发过程中,有意或无意做出的错误或不理想的技术决策,由此带来的后果,逐步累积,就像债务一样。 程序员经验的缺乏 公司没有鼓励程序员去关注技术债务,只是不断地生产完成需求的代码 技术债务分类 战略债务,是为了战略利益故意为之,并长期存在。公司或业务高速发展的阶段,主动放弃了一些技术上的完备与完美性,而保持快速的迭代与试错性。 特点是...

2022-01-30 10:30:52 457 1

原创 程序员进阶攻略-笔记-041~050

沟通之痛:如何改变 沟通,越发成为一件重要的事,至少和写代码同等重要;沟通清楚了,能让我们避免一些无谓的需求,少写不少无效的代码。 需求没沟通清楚,写出来的代码,即使没 Bug 将来也可能是负债。不是自己还就是别人来还。 1. 以理服人:对事不对人,切勿意气用事。 2. 以德服人:请公司所谓的经验丰富、德高望重的“老司机”来裁决 3. 以力服人:看双方部门老大或老大的老大,谁更有力或给力。 认识与改变:做出改变的第一步是要能认识到,否则改...

2022-01-28 14:08:28 449

原创 Docker下/var/lib/docker/overlay2空间清理办法

Docker下/var/lib/docker/overlay2空间清理办法1. 查看磁盘占用 df -h2. Docker 的内置 CLI 指令docker system df 可用于查询镜像(Images)、容器(Containers)和本地卷(Local Volumes)等空间使用大户的空间占用情况。 ~]# docker system df 查看详细 ~]# docker system df -v3. 空间清理 【1】通过 Docker 内置的 C...

2022-01-28 11:37:54 24481 2

原创 程序员进阶攻略-笔记-021~030

信息:过载与有效 “忙碌、充实而疲倦”的虚幻假象 在这个信息过载的洪流中,需要的就是在这股洪流中筛选信息并建立自己中流砥柱般的 “知识磐石”。 心智” 这两个字合在一起是一个意思,分开为 “心” 和 “智” 两个字又可以分别解释为:“心” 是你对需要的选择,从心出发;“智” 是对价值的判断,智力的匹配 应用:一击中的 储备了信息,建立了知识,最终都是为了应用。 囤积信息,学习知识,如果不能被应用在改变自己上,那还有什么意义? ...

2022-01-22 10:30:24 263

原创 程序员进阶攻略11-20笔记

三阶段进化:调试,编写与运行代码 阶段一:调试代码 Debugging 逐渐降低使用Debug 功能的频率 阶段二:编写代码 Coding “信、达、雅” 信,指不违背原文,不偏离原文,不篡改,不增不减,要求准确可信地表达原文描述的事实。 程序员需要深刻地理解用户的原始需求。虽然需求很多时候来自于需求(产品)文档,但需求(产品)文档上写的并不一定真正体现了用户的原始需求。 只有真正挖掘并...

2022-01-17 22:57:10 4492

原创 程序员进阶攻略笔记01-10

有人有天赋,有人凭兴趣,有人看前景。在人生的不同阶段里,我都喜欢做“复盘”,一方面审视过去的自己,另外一方面思索未来的方向。选择开发语言:对一门语言掌握到通透之后,再学习其他语言才可能触类旁通。开发平台,它包括一种编程语言、附带的平台生态及相关的技术。 与语言平台关联的还有其技术生态以及各种技术框架的繁荣程度。算法【动态】数据结构【静态】 数组 Array 链表 Linked List 队列 Queues 堆栈 Stacks 散列 Hashes...

2022-01-14 09:28:40 3726

原创 windows下安装postgres 12.9

1.下载--选择版本https://www.enterprisedb.com/downloads/postgres-postgresql-downloads一路点点点,需要注意的是 1. 记住安装过程中输入的密码,后面要用 2. 语言选择【Select the locale to be used by the new database cluster】建议不要选择默认选项[Default locale],而是选择C2. 安装完成,创建环境变量【可省略】主要是将postgres的安装...

2022-01-12 09:51:58 1423

原创 Linux性能优化实战笔记-055-分析性能问题的一般步骤

系统和应用是相辅相成、相互影响的。 系统是应用的运行环境,系统的瓶颈会导致应用的性能下降; 应用的不合理设计,也会引发系统资源的瓶颈。我们做性能分析,就是要结合应用程序和操作系统的原理,揪出引发问题的真凶。1. 系统资源瓶颈=========分析的关键是找关联 首先来看系统资源的瓶颈,这是最为常见的性能问题。通常使用 USE 法,即使用率、饱和度以及错误数这三类指标来衡量。其中 CPU、内存、磁盘和文件系统以及网络等,是最常见的硬件资源。 文件描...

2021-12-24 15:53:40 611

原创 玩转spring全家桶笔记-001-初识Spring

spring课程介绍 丁雪丰 美团研究员,《Spring Boot 实战》、《Spring 攻略》译者,腾讯云 TVP。 课程内容: 1. 初识Spring Spring家族的主要成员 跟着spring了解技术发展趋势 编写第一个Spring应用程序 2. 数据操作 JDBC必知必会 O/R mapping实战 ...

2021-12-14 11:17:38 601

原创 docker

Docker核心概念 镜像是一个只读的模板,类似于安装系统时用到的ISO 文件,通过镜像来完成各种应用的部署。 容器可以被启动、开始、停止、删除等,每个容器间都是相互隔离的。 仓库是一个存放镜像的场所,仓库分为公共仓库和私有仓库。最大的公共仓库是Docker hub (https://hub.docker.com/), 国内公共仓库是http://www.dockerpool.com/ 注意:镜像类似于操作系统,容器类似于虚拟机本身。 安装Dock...

2021-12-14 11:09:15 200

原创 shell实战---检查所有的磁盘占用

]# cat diskuse.sh#!/bin/bashalarmdiskper=10egrep -v '^127.0.0.1|^#' /etc/hosts|egrep '([^0-9]|\<)(([0-1]?[0-9]{0,2}|([2]([0-4][0-9]|[5][0-5])))\.){3}([0-1]?[0-9]{0,2}|([2]([0-4][0-9]|[5][0-5])))([^0-9]|\>)'|cut -d' ' -f1|sort -u |while read lined

2021-11-25 16:39:51 877

原创 PT环境下postgresql.conf配置参考

# -----------------------------# PostgreSQL configuration file# -----------------------------## This file consists of lines of the form:## name = value## (The "=" is optional.) Whitespace may be used. Comments are introduced with# "#" anywhere...

2021-11-08 15:37:27 728

原创 文件系统笔记

概述术语模型方法:性能分析的方法===观察法和实验法工具:静态和动态工具调优概述 文件系统性能比磁盘性能更重要 文件系统通过缓存、缓冲以及异步IO等手段来缓和磁盘(或者远程系统)的延时对应用程序的影响。 术语: 文件系统: 一种把数据组织成文件和目录的存储方式,提供了基于文件的存取接口,并通过文件权限控制访问。 还包括一些表示设备、套接字和管道的特殊文件类型 以及包含文件访问时间戳的元数据。 文件系统缓存:...

2021-11-02 15:47:58 456

原创 虚拟机所在的宿主机磁盘饱满后的处理

删除一些容比如log等等,然后1. virt-manager2. 强制关机,右击虚拟机--shut Down--Force Off,完全停止后,右击虚拟机-Run3. 进入虚拟机右击虚拟机-Open,进入控制台操作

2021-10-28 15:23:04 553

原创 docker容器化实战-笔记

Docker核心概念 镜像是一个只读的模板,类似于安装系统时用到的ISO 文件,通过镜像来完成各种应用的部署。 容器可以被启动、开始、停止、删除等,每个容器间都是相互隔离的。 仓库是一个存放镜像的场所,仓库分为公共仓库和私有仓库。最大的公共仓库是Docker hub (https://hub.docker.com/), 国内公共仓库是http://www.dockerpool.com/ 注意:镜像类似于操作系统,容器类似于虚拟机本身。 安装Dock...

2021-10-27 14:34:38 252

原创 Jmeter5.3使用长连接

1. HTTP request Samper的Basic设置中勾选【Use keepAlive】2.HTTP request Samper的Advanced设置中选择【HttpClient4】并设置连接的保持时间3. 还要修改jmeter的配置JMeter.propertieshttpclient4.idletimeout=60000 #<time in ms> 注意单位是ms。长连接的保持时间设置默认是注销的,注意跟GUI上保持一致。 ...

2021-10-22 15:25:41 3087

原创 PostgreSQL实战-010-性能优化

影响数据库性能的因素: 在硬件层面: CPU IO 内存 网络 在软件层面: 操作系统配置 中间件配置 数据库参数配置 运行在数据库之上的查询和命令 等 ......性能检测系统监控在进行系统性能优化时, 应当先着眼全局进行分析,再逐步深入到细节。PostgreSQL 数据库的SQL 服务器应用通常分为 OLTP...

2021-09-17 15:12:10 900

原创 POSTGRESQL实战-008-事务与并发控制【不完善】

事务与并发控制 当多个事务并发执行时,即使每个单独的事务都正确执行,数据库的一致性也可能被破坏。 为了控制并发事务之间的相互影响,解决并发可能带来的资源争用及数据不一致性问题,数据库的并发控制系统引入了: 基于锁的并发控制机制(Lock-Based Concurrency Control) 基于多版本的并发控制机制MVCC (Multi-Version Concurrency Control)。 事务和并发控制的概念 事务的基本概念和性质...

2021-09-03 13:17:56 404

原创 yum整理

1. 常用yum源整理 1. EPEL:Extra Packages for Enterprise Linux的缩写,其为EL6或EL7提供重建的Fedora组件 EPEL的官网是:fedoraproject.org/wiki/EPEL,可以通过yum install -y epel-release安装。 2. SCL SCL是Software Collections的缩写 SCL的官网是www.softwarecollections.org,CentO...

2021-09-03 13:14:53 332

原创 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 1146 1

原创 高楼的性能工程实战课-011-打开首页--一个案例带你搞懂硬件设施的性能问题

打开首页--一个案例带你搞懂硬件设施的性能1. 看架构图:如果有工具直接展示更好,如果没有工具,建议我们画一画,方便以后分析,不要自信认为自己能记住框架的所有组件。2. 顺便看下代码逻辑,从代码中查看这个接口实现的逻辑,在做哪些动作,以及后续的链路。3. 确定压力数据: 这里我们就要思考一下了:如果想要执行一个场景,并且这个场景可以压出打开首页接口的最大 TPS,我们应该怎么设置压力工具中的线程数、递增策略和持续执行策略呢? 可以先拿10个线程试运行一下,一个线程最大达到 TPS ...

2021-08-27 10:43:13 2139

原创 高楼的性能工程课-010-设计基准场景

基准场景 基准场景是为了找到系统中明显的配置及软件 Bug 线程数应该如何确定? 压力线程的连续递增的重要性 如何分析 性能场景分类: 验证:评估当前系统容量;针对当前的系统、当前的模型、当前的环境,验证一下版本是否有性能的变化。不性能分析,不调优。 基准场景 容量场景 稳定性场景 异常场景 调优:评估并优化...

2021-08-26 15:13:59 282

转载 线程池大小如何确定?

在java中,几乎所有需要异步或者并发执行任务的程序都可以使用线程池。在开发过程中,合理的使用线程池能够带来3个好处:首先是降低资源消耗。通过重复利用已创建的线程降低创建线程和销毁线程所带来的开销。 提高响应速度。当任务到达时,任务可以不需要等待线程创建就立即执行。 提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅消耗系统资源,同时降低系统的稳定性,使用线程池可以进行统一分配、调优和监控。如何合理的使用线程池,如何合理的给出线程池的大小,是非常重要的。对于线程池的大小不能过大,也不能.

2021-08-26 15:11:45 2075 1

原创 高楼性能工程实战课-008-并发、在线和TPS

并发、在线和TPS RT:容忍度 并发:并发是在单位时间内完成的事务(T)的个数。如果这个事务(T)是用户的操作,那就是并发的用户了。 事务的级别: 1. 请求级别的TPS:按接口请求计算,比如整个登录下单支付退出过程调用100个接口 用户数 * 接口请求数100 / 操作时间 2. 单业务操作级别:比如登录、下单、支付,7个业务 用户数 * 业务数7 / 操作时间 3. 用户级别:1个用...

2021-08-24 16:39:33 1265

原创 高楼的性能工程实战课-009-全局监控&定向监控

性能监控数据不足导致没有分析的证据链,真正的性能分析,从现象到结论,必须有完整的分析链路。监控层级: 全局监控 定向监控 设计监控策略 1. 分析架构,通过分析架构,确定要监控的点。 操作系统级【k8s的master/node节点】 Java微服务 数据库(MysQL) 链路跟踪APM RabbitMQ Redis 日志监控ELFK Kuber...

2021-08-24 11:25:11 1328

原创 性能工程实战课-007-场景数据

场景数据 在 RESAR 性能工程中,场景里使用的数据需要满足两个方面: 第一,数据要符合真实环境中的数据分布,因为只有这样,我们才能模拟出相应的 IO 操作; 第二,要符合真实用户输入的数据,以真正模拟出真实环境中的用户操作。 这两个方面分别对应着两类数据:铺底数据和参数化数据。 铺底数据 系统中用到的数据分为两部分: 静态数据(图中红色点)===图片等 静态数据通常有两个可以存放的地...

2021-08-19 15:32:34 261

原创 性能工程实战课-006-业务模型

业务模型 在容量场景中,每个业务比例都要符合真实业务场景的比例。如果不符合,那场景的执行结果也就没有意义了。 做场景时首先要明白,当前的场景是要模拟历史业务场景,还是未来业务场景。 如果是未来的业务场景,那就要靠业务团队给出评估,而非性能团队。 如果一个系统有历史业务数据,那我们获得业务模型就有背景数据了 抽取生产业务日志是为了得到对应的业务比例 大体上来说,抽取真实业务模型有两个大步骤...

2021-08-19 14:04:36 120

原创 高楼的性能工程实战课笔记-005-性能方案

传统测试方案: 常规项目信息:比如说测试背景、测试范围、测试准则、测试环境、实施准备、组织结构、项目风险、里程碑。 性能实施信息:比如说测试模型、测试策略、监控策略。 项目输出:比如说测试脚本、测试用例/测试场景、监控采集数据,测试报告、调优报告。工程级完整测试方案 背景 项目背景 性能目标 测试范围 需要测试的特性 不需要测试的特性 准则 启动准则 结束准则...

2021-08-18 15:13:29 1827

原创 性能工程实战课-031-怎么写出有价值的性能报告?

性能报告&测试汇报 性能报告表达的是业务系统的性能结论 性能报告是一个性能项目的总结,是性能价值的最终体现 “三分干活七分报告”,也就是说干活的辛苦都是留给自己体会的,报告如果做得不好,你再累、再辛苦,所有的付出都会付诸东流。 给老板做汇报,简明扼要即可,不用写那么花哨。 我们的报告不是用来展现自己做得有多么辛苦,也请你务必牢记这一点。 1. 先确定受众,再写性能报告【要先考虑清楚,报告是给谁看,这一点至关重要。给领导看,...

2021-08-17 16:16:29 151

原创 高楼的性能工程实战课笔记-004-性能分析决策树&证据链

如何构建性能分析决策树? 性能分析决策树在性能监控设计和性能瓶颈分析时都会被使用,并且在性能瓶颈分析时,我们必须要有决策树的思路。 什么是性能分析决策树呢? 性能分析决策树是包括了系统架构中所有技术组件、所有组件中的模块以及模块对应计数器的完整的结构化树状图。 组件===》模块===》计数器 如何构建性能分析决策树? 构建性能分析决策树是我们了解一个系统非常关键的环节,总体来看,它分为 4 个...

2021-08-17 14:57:54 1304

原创 性能工程实战课-002&003-性能指标|性能场景|性能分析

需求性能指标 明确性能需求是一个关键点,我们要明确在什么样的业务压力场景下要求这样的指标。 平均值 标准方差---毛刺 没有业务指标就没有技术指标,我们的工作就是让 业务指标(比如并发用户数、在线用户数等) 和 技术指标(比如 CPU、IO 等)对应起来。 在不同的性能场景中要定义好不同的性能需求指标,有些是自己看的,有些是给别人看的。 性能场景 性能场景: 基准场景...

2021-08-17 12:46:05 240

原创 高楼的性能工程实战课笔记-001-RESAR 性能工程

RESAR 性能工程, RESAR 性能工程是对性能项目过程中的各个具体的动作做更详细的描述,使之可以成为可以落地的具体实践。 【性能测试】 性能测试是针对系统的性能指标,建立性能测试模型,制定性能测试方案,制定监控策略,在场景条件之下执行性能场景,分析判断性能瓶颈并调优,最终得出性能结果来评估系统的性能指标是否满足既定值。 性能项目是有宏观目标的: 1. 找到系统中的性能瓶颈并优化掉; 2. 满足业务容量的要求,保障线上系统可以正常运行。...

2021-08-17 10:02:57 2404

原创 PostgreSQL实战-10-性能优化

影响数据库性能的因素: 在硬件层面: CPU IO 内存 网络 在软件层面: 操作系统配置 中间件配置 数据库参数配置 运行在数据库之上的查询和命令 等 ......性能检测系统监控在进行系统性能优化时, 应当先着眼全局进行分析,再逐步深入到细节。PostgreSQL 数据库的SQL 服务器应用通常分为 OLTP...

2021-07-16 17:38:16 1568

原创 PostgreSQL实战-体系结构

体系结构 数据库:PostgreSQL 数据库是由一系列位于文件系统上的物理文件组成,通常将这些物理文件称为数据库, 将这些物理文件、管理这些物理文件的进程、进程管理的内存称为这个数据库的实例。 PostgreSQL 的内部功能实现上,可以分为: 系统控制器:负责接收外部连接请求 查询分析器:对连接请求查询进行分析并生成优化后的查询解析树,从文件系统获取结果集或通过事务系统对数据做处理,并由文件系统持久化数据 ...

2021-07-16 17:36:21 344

原创 TDD

TDDTDD的T容易让人误解,TDD不是测试方法,而是开发设计方法。其主要目标是提供可测试的代码设计,测试只是一项有用的副产品。1、先测试  因为是先测试,所以测试一定会失败(遇红),然后编写代码让测试通过,哪怕是通过作弊手段(写死)(变绿),然后继续编写测试发现其不合理部分(代码异味),然后重构(不增加测试,不增加功能,只改善代码),重构后继续运行测试2、小步快跑。做遵从测试山羊的教诲,每次修改...

2018-03-07 09:39:25 1104

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除