Articles of 性能调优

什么是Linux的一些当前和相关的基准testing工具?

我特别感兴趣的是在野外使用场景中近似或目标真实的基准。 我主要关注的领域是延迟,networking性能(通过套接字接收数据)。 应用程序区域是消息传递和数据库(在内存中)。 不关心math,或audio/video/桌面,这是纯粹的服务器应用程序。

将内存分配器更改为Jemalloc Centos 6

在阅读了关于jemalloc等内存分配器对高度线程化应用程序的影响的博客文章后 ,我想在我们的一些服务器集群上进行更大规模的testing。 我们使用线程运行sphinx和apache,并在24台核心机器上运行。 安装jemalloc非常简单。 我们正在运行Centos 6,所以yum安装了jemalloc jemalloc-devel。 我的问题是,我们如何将系统上的所有内容都更改为使用jemalloc而不是Centos中内置的默认malloc。 研究指出,这是一个潜在的select: LD_PRELOAD=$LD_PRELOAD:/usr/lib64/libjemalloc.so.1 这将足以让所有使用jemalloc?

衡量I / O性能悖论

我试图找出正确的方法来获得我的NFS集群的“真实世界”写性能。 NFS导出安装在一个XENpipe理程序上,我从一个虚拟机里运行'dd' 。 我不能决定的是我应该使用O_DIRECT/O_SYNC或不。 如果我不使用它,内核将对RAM进行页面caching,我将最终测量RAM吞吐量,而不是磁盘。 另一方面,大多数(如果不是所有的)服务器应用程序都会使用RAMcaching(我是否有错误的假设?)。 所以我想知道平衡点在哪里, 真实世界中会发生什么?

如何configuration硬盘使用模式?

我正在考虑为我的一些服务器升级存储系统,所有的指南和手册build议在决定使用(RAID?SSD?iSCSI?NAS?)解决scheme之前考虑应用程序的存储使用模式。 有没有我可以使用的工具,可以告诉我: 如果我的服务器主要是顺序或随机的IO, 如果我正在做更多的读取或更多的写入, 平均读写大小, 还有其他什么信息可以用来作出决定? 我知道iostat,似乎我可以用它来回答问题2.但我想我需要其他工具来回答其他问题。 似乎人们通常喜欢在运行软件的基础上对这些事情进行有根据的猜测,但我宁可衡量而非理性。 操作系统是Ubuntu 8.04,但我愿意改变操作系统,如果别的东西有更好的测量工具。

使用固态驱动器的数据库I / O加速

使用固态驱动器(尤其是PostgreSQL数据库)如HP的IO加速器提高数据库性能的体验是什么? 你有没有看到任何显着的改进?

MySQL性能调优

我正在寻找一个调整MySQL服务器常用陷阱和优化的简洁列表,用于中型网站。 一般来说,我在这里寻找的build议types是普通开发人员或pipe理员可以轻松实现的信息,这将会为他的网站的性能带来可观的收益。 举个例子 下面是我从阅读高性能MySQL中得到的一个提示,我经常看到它用于: 当使用MyISAM存储引擎(缺省值)时,服务器将在执行DELETE或UPDATE操作时执行整个表的locking操作,或者在执行INSERT时不会将其附加到表的尾部(因为还有一个“漏洞”以前的DELETE)。 在操作完成之前,没有其他查询可以使用该表。 因此,如果使用除“INSERT”之外的任何操作进行大量修改,则应在任何使用率很高的表上使用InnoDB或其他行级locking引擎。

apache和ajp性能

我有一个坐在两个tomcat应用程序服务器(一个在同一台物理服务器上,另一个在不同的服务器上)的apache,它耗时工作(每个请求0.5秒到10秒)。 Apache的http服务器每秒平均有1到2个并发请求被杀死。 两个Server规格都是大约2GB的RAM。 有没有办法来优化Apache来处理负载? 任何build议是值得欢迎的。 BalancerMember ajp:// localhost:8009 / xxxxxx BalancerMember ajp://XXX.XX.XXX.XX:8009 / xxxxxx 我一直在apache2.2日志中获取以下内容: [Mon Dec 28 00:31:02 2009] [error] ajp_read_header:ajp_ilink_receive失败 [2009年12月28日星期一2009年1月31日] [error](120006)APR不理解此错误代码:proxy:读取响应失败127.0.0.1:8009(localhost)

Apache性能问题,在“1000个孩子”之后,Apache不再响应HTTP请求。 不是MaxClients问题?

希望有人能指出我正确的方向,因为我已经花了上周的时间来试图找出“问题”在哪里,但一直未能,尝试张贴到Apache用户邮件列表,但要在这里反弹以及。 在CentOS 5.8上运行Apache 2.2.3 mod_php。 与此同时,每天当stream量很大时,我们遇到了一个问题,即Apache不再响应任何HTTP请求。 这听起来像一个标准的MaxClients达成的问题,但似乎并非如此。 另外,在此期间login到机器的平均负载不到1,并且仍然有足够的RAM可用。 回顾/ var / log / httpd / error_log我注意到了以下模式: [Mon Apr 30 07:00:34 2012] [info] server seems busy, (you may need to increaseStartServers, or Min/MaxSpareServers), spawning 32 children, there are 0 idle, and 905 total children [Mon Apr 30 07:00:35 2012] [info] server seems busy, (you may need […]

通过GPOpipe理Win7性能选项

我们公司有很多虚拟的Windows 7实例。 根据VMWare的build议,我们想定制视觉效果来优化性能。 我们发现我们可以通过GPO更改以下选项: 让Windowsselect最适合我的电脑 调整为最佳的外观 调整以获得最佳性能 习惯 VMWare希望我们select自定义,然后在上面四个选项下面的checkbox中应用非常具体的选项。 我发现了一篇文章,通过registry手动执行此操作,但这些选项不起作用。 GPO也不处理这个本地。 有谁知道我们可以通过GPO将这些选项更改为我们需要的吗?

“调整”是否需要继续运行?

在我的CentOS 7系统中,我使用tuned-adm在configuration期间设置适合环境的configuration文件,但在此之后,我从未更改过这个configuration文件。 似乎调优系统产生一个进程( /usr/bin/python -Es /usr/sbin/tuned -l -P )进行dynamic监控和调整。 与我的系统上的其他守护进程相比,此进程使用的内存明显更多。 我想减less某个内存受限的服务器上的非必需服务。 如果我不使用涉及dynamic调整功耗等参数的configuration文件,那么tuned过程是否需要继续运行? 我可以安全地停止进程,并从那时起保留原来设置的configuration文件?