2025年06月09日
先讲个故事,我们经历过很多的POC测试,虽然gpfdist外部表的加载性能一直领先友商,但是,在文件服务器带宽有限的情况下,我们往往很难取得碾压性的优势,尤其是文件服务器只有一根光纤的时候,测试的结果,往往是大家的性能几乎相同,所以,我在很长一段时间,都在考虑,如何可以突破性能的上限,大概一年前,我就跟我们的技术大牛同事聊这些思考,得到了一个大牛的共鸣,后来我就做了他的产品经理,他开始着手写一个可以在一定程度上代替gpfdist的命令,后来他的成品命名为lotus,本文后续的一些测试中,包括文件名和数据库的名称都是使用的lotus,就是源于这里,大牛的命令就叫lotus,我们讨论了gpfdist是单进程的服务,所以,大神的第一次入手就开始干多线程切分文件和分发文件的实现,我们进行了测试,但测试发现,网卡是个更大的性能瓶颈,然后我就给大牛提需求,上ZSTD压缩,我们还对ZSTD的各个压缩级别做了测试,最终,我们发现,ZSTD压缩,可以极大的节省网络带宽的开销,在大神上ZSTD需求期间,我就开始琢磨,我是不是可以改造一下gpfdist的代码,加入ZSTD压缩,经过两三周的学习和努力,最终有了ZSTD改造版的gpfdist,本文不会深入讲解如何改造gpfdist的过程,因为过程崎岖坎坷,只是介绍大概的优化思想。
2025年06月09日
iostat是I/O statistics(输入/输出统计)的缩写,该工具是对系统磁盘操作活动进行监视,显示磁盘活动整体统计情况,不对某个进程进行分析,当然,也可以显示cpu使用情况。CentOS Linux操作系统,默认是没有安装此软件包的,安装命令:
yum install sysstat
2025年06月09日
当站点响应慢的时候一般会怀疑服务器是不是有问题,而服务器也是有很多因素(CPU、内存、磁盘I/O等等)组成,在这里我们使用sar命令进行初期排查。
sar命令是可以显示LoadAverage、CPU使用率及磁盘I/O信息的命令,更重要的是可以查看过去的信息。
首先查看服务器有没有安装sysstat。
# rpm -qa | grep sysstat sysstat-9.0.4-22.el6.x86_64
2025年06月09日
首先说说系统调用是什么,当你的代码需要做IO操作(open、read、write)、或者是进行内存操作(mmpa、sbrk)、甚至是说要获取一个系统时间(gettimeofday),就需要通过系统调用来和内核进行交互。无论你的用户程序是用什么语言实现的,是php、c、java还是go,只要你是建立在Linux内核之上的,你就绕不开系统调用。
2025年06月09日
这是现代生活的一个事实:Mac 可能无缘无故地运行缓慢,但 Mac 运行如此糟糕很可能是有原因的,我们涵盖了最常见的原因,如何知道每个原因是否导致速度变慢,以及最重要的是,如何解决它。如果您的 Mac 运行缓慢,并且感觉就像蜗牛一样可以比计算机更快地启动新应用程序或加载网页,请继续阅读。
2025年06月09日
大家好,上一期给大家介绍了如何使用lttng以及log可以更好地分析ceph的运作模式,今天再给大家介绍一下如何使用性能分析工具观察cpu性能指标~