Articles of 性能

htaccess的性能:拒绝访问特定的文件和文件夹

我试图find拒绝通过htaccess访问特定文件和文件夹的性能最友好的方式。 (例如一个.git文件夹,一个.hg文件夹,.htaccess文件本身。)是否有一些比其他的更具性能友好的特殊方法或组合? (FilesMatch与DirectoryMatch与RedirectMatch与其他)。

在虚拟机上运行nginx是否有缺点?

我计划使用nginx来承载我的一些最小的php的静态内容。 我将有2个服务器的nginx,但可能是太多的硬件,我所需要的。 我正在考虑将它们分成总共4个nginx虚拟机(每个盒子2个)。 这将允许我更灵活地分配Nginx和网站的其他部分(这是Apache)之间的资源。 大部分的cpu / ram将被用来托pipe静态文件并执行php的系统调用。 我们将使用vmware esx来创build虚拟机。 我们会在虚拟机上运行nginx而不是在硬件上运行nginx,从而取得重大的性能提升?

iotop Linux内核2.6.18

所以必须注意到,iotop不适用于2.6.18,因为它小于2.6.20并且需要Python 2.6+。 我已经做了一些研究,并遇到了这篇文章: http : //lserinol.blogspot.com/2009/09/io-usage-per-process-on-linux.html 据此,如果这些进程在/ proc / pid#/ io(其中pid#是进程#)中具有io统计信息,则无论内核版本如何,都是可行的。 所以,实际上,我可以将Python升级到2.6并testingiotop。 不过,我的Linux,CentOS release 5.5(Final)的味道,目前只支持Python 2.4.3-44.el5。 如果我要从百胜卸载,它看起来不那么漂亮。 它最终希望卸载235包,其中大部分是非常重要的! 我在一个地方,在线阅读(我忘记了昨天的URL),你可以安装Python 2.6+并行到这个,并有安装iotop rpm的使用。 那么,我没有select那条路线。 我想,这是什么,让我写下iotop(不复制它,但反向工程,而不真正看它的代码/它在使用中)在bash中。 我以为这只会抓住/ proc / pid#/ io文件并parsing统计信息。 所以我写了一个脚本,通过从所有/ proc / pid#/ io文件中收集所有这些统计信息,按照每个度量标准对它们进行sorting,然后获取前10个最高值,从而获得前10个rchar,wchar,read_bytes和write_bytes。 结论,数据似乎完全没用。 有谁知道高级Linux的任何资源,我可以弄清楚如何获取这些/ proc / pid#/目录,并找出他们在磁盘上使用io做什么? 我的主要目标是弄清究竟是什么导致我的磁盘上的高负载。 我只是知道它在/分区(在这种情况下的/ dev / sda2),我真的不知道如何在没有iotop的帮助下缩小它。 如果我运行iostat来抓取1分钟的指标,那么每秒钟的第一个结果就会显示出一个很高的“kB_read / s”,这让我觉得它大部分是读取的。 但是,如果我观看更新,它每秒都会给我,实际上只是显示kB_wrtn / s的值。 这让我觉得iostat给我的初始价值是误导性的。

通过SHOW INNODB STATUS测量性能;

当查看mysql的SHOW INNODB STATUS的输出时,最重要的值是什么,以及什么是性能不佳的指标? 具体在FILE I / O和BUFFER POOL和MEMORY下。 数据库服务器是: High-CPU Medium Instance 1.7 GB of memory 5 EC2 Compute Units (2 virtual cores with 2.5 EC2 Compute Units each) 350 GB of instance storage 32-bit platform I/O Performance: Moderate API name: c1.medium 这是一个跟进: Mysql InnoDB表大小的性能

Mysql挂断了服务器。 如何避免这一点?

有时候我的网站因为Mysql耗费了所有资源而“倒台”,但是我认为它不会停止创build更多的httpd进程。 那可能吗? 如果我重新启动apache,这些进程消失,我可以看到由mysql进程的CPU消耗缓慢下降,然后该站点再次联机。 无论如何,我无法find瓶颈。 该网站有很多cronjobs(php脚本),每个生成日志,其中包括总执行时间。 所以我的第一个想法是试图find花了很多时间的脚本,但这是不可能的,因为它只需要其中一个放慢MySQL服务器,让他们都增加了他们的执行时间。 有什么build议? 我在哪里可以学习如何find瓶颈? 注:我在CentOS,Apache 2,PHP 5.3和MySQL 5

ext2转储/恢复问题

我正在用maildir存储运行一个邮件服务器。 这意味着,相当多的文件被创build,我刚用完inode。 AFAIK没有神奇的命令来增加ext#文件系统上的inode数量(或者我错了吗?),所以我必须备份和恢复整个文件系统。 但是我怎么做? 我试图创build另一个分区,并做: dump -f – -0 /vservers/mail | restore rf – -u -v 虽然这似乎起作用,但比我愿意等待的时间要长得多(在我停止该过程之前,它已经设法在两个小时内创build500个空目录; strace显示恢复过程中调用了大量无用的lseeks)。 有没有其他方法来复制完整的文件系统(包括套接字,设备文件,所有者,权限,acls等)? 附加信息:源fs是ext3,目标是ext4,文件系统在lvm上,我想移动的fs是vfs的根fs。

衡量Windows Server上新软件的影响

我是一个小企业的pipe理员。 我被要求给另一家公司看我们的服务器是否有足够的可用资源来处理他们的软件。 我对PerfMon的经验很less,所以我不太确定要测量什么才是最有用的。 我需要评估两台Win2k3terminal服务器,每天的负载约为40人。 新的软件包将是前端GUI到另一台服务器上的数据库,我们应该假设服务器上的几乎任何人都将访问该软件。 我相信我应该研究处理器,内存和networking吞吐量有多less“资源”,但是我不确定我应该特别关注哪些指标。 有没有人有我的任何提示?

MD – RAID5 – 它应该多快,或瓶颈?

我build立了一个LUKSencryptionRAID5的新服务器。 在以前的服务器上,瓶颈绝对是CPU,因为它是一个7岁的单核,负载达到100%。 现在不一样了。 我的写作performance还差,但是我看不出哪里是瓶颈。 中 root@home-le:/data# dd if=/dev/zero of=benchmark bs=100MB count=100 100+0 Datensätze aus 10000000000 Bytes (10 GB) kopiert, 775,726 s, 12,9 MB/s 我明白了 root@home-le:/data# iostat Linux 2.6.38-11-server (home-le) 23.09.2011 _x86_64_ (2 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0,22 3,58 10,02 13,56 0,00 72,61 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 66,63 795,46 […]

在Debian服务器上testingPHP脚本加载

任何人都知道有用于testingPHP应用程序性能的Linux(debian)工具吗? 我想检查女巫的地方我的PHP / MySQL脚本需要优化。

系统升级后可怕的mysqld性能

我最近用4GB和OS X 10.6.8replace了我的老Core2duo Mac,用16GB的4核i5,SSD和10.7.2。 除mysqld以外,新系统的速度非常快。 轻负载是可以的,但是当我给它做一些真正的工作时,它的行为是非常奇特的。 我试过mysql-5.1.59-osx10.6-x86_64和mysql-5.5.16-osx10.6-x86_64,结果相似。 工作负载是一个batch file,需要从供应商那里获得一个大型的数据库,并将这些数据处理成我们可以在生产服务器的应用程序中使用的表单。 在旧的Mac上跑了3到4个小时。 在新的一个快速运行一段时间,然后陷入泥潭,之后,每个查询运行速度惊人缓慢与微不足道的IO和CPU挂钩在一个核心100%(batch file一次只运行一个查询MySQL CLI客户端)。 其他的应用程序也会慢下来,并使用大量的CPU,即使根据顶部,有10GB的非活动内存。 例如,现在mysqld正在运行 select t.t_id, a.a_id from t inner join a on ax=tx into outfile; 这个查询已经运行了大约一个小时,而旧系统只花了4分钟。 它在一个内核上使用100%的CPU,并且每隔一分钟左右就向outfile写一个1MB的数据块。 使用iosnoop我看不到从任何表a或吨(都MyISAM)的读取,所以我想他们caching在虚拟机。 相关的索引已预先加载到MyISAM密钥缓冲区中。 所以肯定没有IO瓶颈。 然而这个新系统比旧系统慢了许多(〜20倍)。 我有5.5的性能架构,但我不明白。 而我有dtrace,但我不是真的有能力驾驶它,而不是使用像iosnoop给定的公用事业。 可能会发生什么? 我能做些什么来发现相关信息? 编辑 :这是所有my.cnf已经为mysqld默认的一切。 [mysqld] datadir = /Users/fsb/mysql port = 3306 socket = /tmp/mysql.sock key_buffer_size = 1536M performance_schema = ON