From owner-freebsd-stable@FreeBSD.ORG Thu Apr 23 20:39:08 2009 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 08113106566B for ; Thu, 23 Apr 2009 20:39:08 +0000 (UTC) (envelope-from zbeeble@gmail.com) Received: from mail-ew0-f171.google.com (mail-ew0-f171.google.com [209.85.219.171]) by mx1.freebsd.org (Postfix) with ESMTP id 62C2D8FC08 for ; Thu, 23 Apr 2009 20:39:07 +0000 (UTC) (envelope-from zbeeble@gmail.com) Received: by ewy19 with SMTP id 19so718703ewy.43 for ; Thu, 23 Apr 2009 13:39:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=Y75h0fPQJJABrkNsykrAA+nIHl8v/r/6HyyzpXJreXE=; b=Fq9/0A0WjcHcSkKkpSXsVqvQ+Dn/FlUFVQ6NB4zc78PDEobOavoZ6x7ZitBY4it/KO 9/uwzGczZ0opy6Bi/zi5BTmOgaHwffXSuQMpVQVVOXuLT+7PGqbEIS9Iz7SBRLWNIm6M aNMFHxfeUIqN/WF5CLjkfyO7of1ECFefYW1pc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=ZvvIzU2EnlvJa25oTXfBADSDsp5ejpGq7kbVNmLC1UYMA4JAQQmnpizpZypNX+2twe Szp5bXqsHj/snGaxERbMx/2NVY3tbHszldGJrVIJ9wt2zmVOL0TOTxMxGU37mcn7Nw+s gNNGBA4xe+K2T4aWr4w8qRcFT82Fc80MiAW3g= MIME-Version: 1.0 Received: by 10.210.105.8 with SMTP id d8mr1432934ebc.60.1240519146509; Thu, 23 Apr 2009 13:39:06 -0700 (PDT) In-Reply-To: References: Date: Thu, 23 Apr 2009 16:39:06 -0400 Message-ID: <5f67a8c40904231339i3335cb22sa2b72f52ec0766ec@mail.gmail.com> From: Zaphod Beeblebrox To: Michel Di Croci Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: freebsd-stable@freebsd.org Subject: Re: Evaluating the performance of a single FreeBSD server X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Apr 2009 20:39:08 -0000 On Thu, Apr 23, 2009 at 2:04 PM, Michel Di Croci wrote: > Hello, > > One of my ex colleague wanna startup a web project. I'm still unsure about > [...] > However what I want to know here is how much could handle this server as a > standalone? How many requests at the same time ? If it's a good way to > present as a startup? If we should go indead to a managed server. My idea > here is that if it's going too slow, we might just buy new instead of going > with a all managed solution where we would be more like renting a server. System performance is a moving target that is insanely difficult to hit without usage data. Is your application going to be processor bound (unlikely these days), memory bound, network bound, disk bound? The cost of a baisc server from a large vendor is around $1k (dell, hp, sun, etc) that you can load FreeBSD on. If you purchace carefully, you'll get a nice quad core with decently fast memory and two disks (RAID 1). It will also likely have two or more gigabit nics. Is this optimal in any way? No. The nic chipsets will suck a bit, the drives will be small-ish... and so on. But compared to a few years ago when you had to care about the performance of a server for a small company, the system will be a monster. My sincere advice is to buy the basic server, build your app and then test it. Test what gets busy first. This depends a little on the hardware, but it depends a lot on how you build your app. It may be cheaper to optimize the app rather than buy more hardware. As an example, moving the database server to another machine may not help at all. If you're not CPU bound, you simply move the bottlenecked I/O to another machine --- still bottlenecked. But as a baseline to answer your question, without running anything serverside (just serving files) FreeBSD can fill multiple gigE nics with content (large-ish files) or perform many millions of hits an hour (small files) on this configuration. Making the broad brush assumption that your Apache+PHP+PostgreSQL is going to run a moderate content manager (a moderately onerous application), you'll still probably pass a million hits an hour if you can push that much content over your network connection and your disks are fast enough (and you can display your page with one or two database hits). In fact number of databse hits per pageview is likely one of your larger limitations.