Articles of 基准

Apache Bench:SSL握手失败直接与并发级别有关

我在ab上运行了一些testing,当我使用超过155的并发级别时,我得到以下结果: SSL handshake failed (5). SSL handshake failed (5). SSL handshake failed (5). SSL handshake failed (5). SSL handshake failed (5). SSL handshake failed (5). SSL handshake failed (5). SSL handshake failed (5). SSL handshake failed (5). Completed 100 requests Completed 200 requests Finished 200 requests 请求仍然成功: Concurrency Level: 200 Time taken for tests: 14.481 […]

在Linux上禁用所有的apache2磁盘caching

为了基准testing的目的,我想强制Apache 2从磁盘加载每个请求的文件,而不是从内存中的caching加载它。 从我读过的同步跟随 echo 3 > /proc/sys/vm/drop_caches 让我放下linux的caching。 随后对特定文件的请求将不会从linux的caching中提供,但是对于同一文件的进一步请求将再次从linux的caching中提供。 这是因为/ proc / sys / vm / drop_caches不禁用caching,它只丢弃那些已被caching到那一刻的内容。 我可能会在每个请求之前删除caching,但我更喜欢另一个解决scheme。 还有什么我可以做,以确保Apache从磁盘加载每个请求的文件? 为什么我想这样做 :我知道在正常的操作中caching是启用的。 但是服务器并没有提供小的,经常访问的文件,比如html页面,小图片等,而是从大量的文件中提供几兆字节大小的文件。 这些文件访问非常一致,因此每个单独的文件很less被访问。 因此,在正常操作中,我期望大多数访问不会导致caching命中,但需要从磁盘加载文件。 我有几个示例文件,我想通过使用apache的ab基准testing来衡量服务器每秒能够处理多less事务。 不幸的是我相信我得到的结果是因为caching太乐观了。 因此,我想禁用Linux的磁盘caching,任何cachingApache可能会自己做。 更新: 到目前为止给出的答案告诉我如何禁用Apache自己的caching,但我仍然想知道是否有一种方法来禁用由Linux内核完成的caching。

我如何使用SPDY支持来对我的网站进行基准testing?

我目前在我的服务器上运行了大量的configuration基准,使用siege ,我想尝试SPDY协议(使用Apache的mod_spdy) – 但是siege使用HTTP。 你知道有什么工具可以让我比较我的网站在一个高度并发的环境中和没有SPDY的性能吗?

添加CPU使MySQL 5.5(Debian)的性能下降

我正要在OpenVZ容器中设置一个数据库服务器(MySQL),我想知道应该为它分配多less个CPU。 我决定以此为基准。 我比较了两个OS / MySQL发行版,并testing了它们如何使用1,2,3和4个CPU来执行。 第一个软件configuration是: CentOS版本6.5(最终版) mysql Ver 14.14 Distrib 5.1.71,用于使用readline 5.1的redhat-linux-gnu(x86_64) 第二: Debian GNU / Linux 7 \ n \ l mysql Ver 14.14 Distrib 5.5.31,用于使用readline 6.2的debian-linux-gnu(x86_64) 两者都在同一个内核上运行 – 2.6.32-openvz-042stab083.2-amd64#1 SMP Fri Nov 8 17:59:25 MSK 2013 x86_64 GNU / Linux。 所有的软件都是从软件包中安装的,并且不需要任何自定义configuration就可以直接使用。 硬件:6GB RAM,1-4个CPU 3.5 GHz。 对于基准testing,我使用sysbench和以下情况: sysbench –test=oltp –oltp-table-size=1000000 –mysql-db=test –mysql-user=root –db-driver=mysql […]

Xen映像文件与分区/ LVM卷的性能

我读了很多build议,从文件映像VM存储切换到基于分区/ LVM卷。 声明是分区/ LVM比图像文件快得多。 我认为不利的一面是,不再有整个虚拟机在一个单一的,容易复制和迁移文件。 任何人都可以就此提出build议,特别是如果新版本的Xen有任何区别,并且有任何IO基准testing支持它吗? 谢谢!

有和没有VT-x的虚拟机有任何基准吗?

我在哪里可以find运行常见操作系统(如Ubuntu或WinXP)的虚拟机的基准testing,以及是否使用VT-x? 我使用xVM(VirtualBox),但也可以selectVMWare或Xen虚拟机pipe理程序。 我更喜欢独立的基准,而不是这些公司发布的基准,但是我会拿任何我能得到的。 谢谢。

Linux在平均启动时读取多less数据?

我想知道为了进入一个虚拟的控制台shell提示符,总共有多less数据被读取到新鲜安装的vanilla Linux系统(如32位CentOS 5.10)? 你知道,阅读所有的configuration文件,加载二进制文件,内核映像等 我正在寻找数量级的估计。 我知道Linux启动在过程的细节方面差别很大。 我们在说10Mb吗? 100MB? 1Gb的?

networking延迟:100Mbit与1Gbit

我有一个100Mbit的当前连接的networking服务器,我的供应商提供了1Gbit的升级。 我知道这是指吞吐量,但数据包越大,传输的速度也越快,所以我希望响应时间略有下降(例如ping)。 有没有人有过这样的基准? 示例(100mbit到100mbit服务器),30字节加载: > ping server -i0.05 -c200 -s30 […] 200 packets transmitted, 200 received, 0% packet loss, time 9948ms rtt min/avg/max/mdev = 0.093/0.164/0.960/0.093 ms 示例(100mbit到100mbit服务器),300字节负载(低于MTU): > ping server -i0.05 -c200 -s300 […] 200 packets transmitted, 200 received, 0% packet loss, time 10037ms rtt min/avg/max/mdev = 0.235/0.395/0.841/0.078 ms 所以从30到300平均。 延迟从0.164增加到0.395 – 我预计这将是一个1gibt到1gbit连接缓慢增加。 我甚至希望100mbit到1gbit的速度更快,如果连接是通过一个交换机,首先等待它收到整个数据包。 更新: […]

如何在Linux内核中禁用perf子系统?

我正在运行一些基准。 我的基准跑步者监视实验之间的dmesg缓冲区,寻找任何可能影响性能的东西。 今天它扔了这个: [2015-08-17 10:20:14警告] dmesg似乎已经改变了! 差异如下: — 2015-08-17 09:55:00 +++ 2015-08-17 10:20:14 @@ -825,3 +825,4 @@ [3.802206] [drm]启用RC6状态:RC6开启,RC6pclosures,RC6ppclosures [7.900533] r8169 0000:06:00.0 eth0:连结 [7.900541] IPv6:ADDRCONF(NETDEV_CHANGE):eth0:链接已准备就绪 perf [236832.221937] perf中断时间过长(2504> 2500),将kernel.perf_event_max_sample_rate降至50000 经过一番search之后,我现在知道这涉及到linux内核中称为“perf”的剖析子系统。 我不认为我们需要这个,所以我想完全禁用它。 再次search,我发现sysctl perf_cpu_time_max_percent可以帮助。 这里有人build议通过将其设置为0来禁用它。在这里阅读更多: perf_cpu_time_max_percent: 向内核提示应该允许使用多lessCPU时间来处理perf采样事件。 如果perf子系统被告知其样本超过此限制,则会降低其采样频率以尝试降低其CPU使用率。 一些perf抽样发生在NMI中。 如果这些样本意外花费太长的时间执行,那么NMI可能会彼此紧挨在一起,以至于没有其他的东西可以执行。 0:禁用该机制。 不pipeCPU占用多less时间,都不要监视或纠正每个采样率。 1-100:尝试将perf的采样率调整到这个百分比的CPU。 注意:内核计算每个样本事件的“预期”长度。 这里的100意味着100%的预期长度。 即使设置为100,如果超过此长度,仍可能会看到样品限制。 设置为0,如果你真的不在乎多lessCPU消耗。 这对我来说听起来像0意味着分析采样率不再检查,但freq子系统保持运行(?)。 任何人都可以阐明如何彻底禁用与freq内核分析? 编辑:有人build议我尝试build立一个没有perf的内核,但我不认为这是可能的。 该选项似乎不可切换: 编辑2:更多的阅读后,我决定我可以设置kernel.perf_event_max_sample_rate为零。 即每秒没有采样。 但是,你不能这样做( 来源 ): […]

理解这个错误:apr_socket_recv:连接重置由同级(104)

所以,如果我用apache基准(ab)做一些基准testing,并且使用大量的请求。 然后有时在testing中间,我得到这个错误。 我甚至不知道这是什么意思。 那我该如何解决呢? 或者,如果服务器得到太多的命中,这只会发生? 问题是,如果我运行10,000次命中,它将完全运行。 如果我再次运行,它会达到4000,并得到错误: apr_socket_recv: Connection reset by peer (104) 有关我的设置:我有nginx静态请求和处理dynamic的阿帕奇。 有问题的文件是由nginxcaching提供的,所以我猜这可能与nginx如何处理请求有关。 想法?