From owner-freebsd-performance@FreeBSD.ORG Sat Apr 21 15:45:47 2007 Return-Path: X-Original-To: freebsd-performance@freebsd.org Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C417616A400 for ; Sat, 21 Apr 2007 15:45:47 +0000 (UTC) (envelope-from cheffo@FreeBSD-BG.org) Received: from blah.sun-fish.com (blah.sun-fish.com [217.18.249.150]) by mx1.freebsd.org (Postfix) with ESMTP id 7E02113C46C for ; Sat, 21 Apr 2007 15:45:47 +0000 (UTC) (envelope-from cheffo@FreeBSD-BG.org) Received: from blah.sun-fish.com (localhost [127.0.0.1]) by blah.sun-fish.com (Postfix) with ESMTP id D3C631B10EA4 for ; Sat, 21 Apr 2007 17:45:45 +0200 (CEST) Received: from [192.168.3.125] (hater.cmotd.com [192.168.3.125]) by blah.sun-fish.com (Postfix) with ESMTP id D147A1B10C26 for ; Sat, 21 Apr 2007 17:45:45 +0200 (CEST) Message-ID: <462A31A9.5080207@FreeBSD-BG.org> Date: Sat, 21 Apr 2007 18:45:45 +0300 From: Cheffo User-Agent: Thunderbird 1.5.0.10 (X11/20070326) MIME-Version: 1.0 To: freebsd-performance@freebsd.org Content-Type: text/plain; charset=windows-1251; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV using ClamSMTP on BLAH Subject: apache httpd performance X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Apr 2007 15:45:47 -0000 Hello, I'm running simple benchmark, ab (freebsd) -> apache 1.3.37 (freebsd) and ab (freebsd) -> apache 1.3.34 (linux) I do not pretend that the benchmark is accurate :) and do not really care about results in linux, but they are here just for comparison. ab -t 30 -c 100 http://boar.cmotd.com:81/manual/ (boar is freebsd) Finished 26678 requests Server Software: Apache/1.3.37 Server Hostname: boar.cmotd.com Server Port: 81 Document Path: /manual/ Document Length: 9364 bytes Concurrency Level: 100 Time taken for tests: 30.000 seconds Complete requests: 26678 Failed requests: 0 Broken pipe errors: 0 Total transferred: 260937758 bytes HTML transferred: 249863898 bytes Requests per second: 889.27 [#/sec] (mean) Time per request: 112.45 [ms] (mean) Time per request: 1.12 [ms] (mean, across all concurrent requests) Transfer rate: 8697.93 [Kbytes/sec] received And this is what I have when the host is linux (some version of ubuntu not tunned just base install) ab -t 30 -c 100 http://dany.cmotd.com:80/manual/ Server Software: Apache/1.3.34 Server Hostname: dany.cmotd.com Server Port: 80 Document Path: /manual/ Document Length: 9158 bytes Concurrency Level: 100 Time taken for tests: 30.000 seconds Complete requests: 32848 Failed requests: 0 Broken pipe errors: 0 Total transferred: 309841821 bytes HTML transferred: 300932967 bytes Requests per second: 1094.93 [#/sec] (mean) Time per request: 91.33 [ms] (mean) Time per request: 0.91 [ms] (mean, across all concurrent requests) Transfer rate: 10328.06 [Kbytes/sec] received changing "-c" from 100 to 500 doesn't show big difference in final results. What can I do to improve my freebsd web server ? cat /etc/sysctl.conf kern.fallback_elf_brand=3 net.inet.ip.random_id=1 (I changed this 0, but nothing changed) kern.maxfiles=25000 net.inet.tcp.delayed_ack=0 net.inet.tcp.inflight.enable: 0 (0/1 does not make difference) CPU: AMD Athlon(tm) 64 Processor 3200+ (2002.57-MHz K8-class CPU) FreeBSD 6.2-STABLE amd64 both httpd.conf have: MinSpareServers 10 MaxSpareServers 20 MaxClients 500 MaxRequestsPerChild 0 StartServers 10 And yes I know "StartServers 10" is not optimal for benchmarking, but this is not the problem. I also found that increasing kern.ipc.maxsockets to 16384+ give a boost and "completed requests" jump to: 28067 but it is still not 32K :) Increasing kern.ipc.nmbclusters doesn't change the picture at all. What else I can change/test to improve performance? -- Best Wishes, Stefan Lambrev ICQ# 24134177