Tag Info

Hot answers tagged

75

The short answer is: Nobody can answer this question except you. The long answer is that benchmarking your specific workload is something that you need to undertake yourself, because it's a bit like asking "How long is a piece of string?". A simple one-page static website could be hosted on a Pentium Pro 150 and still serve thousands of impressions every ...


39

How much do you value the data? Seriously, each filesystem has its own tradeoffs. Before I go much further, I am a big fan of XFS and Reiser both, although I often run Ext3. So there isn't a real filesystem bias at work here, just letting you know... If the filesystem is little more than a container for you, then go with whatever provides you with the ...


34

If you have concurrency set at 1, there's no difference between those two. It begins to matter when you have more than 1 request performed simultaneously. Let's look at an example of what I get on my localhost: ab -c 1 -n 1000 http://localhost/ will give: Time taken for tests: 3.912 seconds Time per request: 3.912 [ms] (mean) Time per request: ...


30

That benchmark is only comparing the speed of the native os to a single guest os. Hardly a real world test. I don't think I would put much weight on it. Most of the KVM camp argues that Xen requires too many interrupts and hops between kernel and user space but from most of the more real world benchmarks that I've seen that hasn't really been realized and ...


19

The typical experience for a general purpose server workload on a bare metal\Type 1 Hypervisor is around 1-5% of CPU overhead and 5-10% Memory overhead, with some additional overhead that varies depending on overall IO load. That is pretty much consistent in my experience for modern Guest OS's running under VMware ESX\ESXi, Microsoft Hyper-V and Xen where ...


17

ab only sends web requests, it doesn't care what the server is that it is testing. However, it only tests one page. There is perfmeter, siege, httpload, jmeter and a number of others. httpload is rather nice since you can feed it a series of URLs that will be tested.


17

Here's some results comparing all major linux FSes with bonnie++ that you can use as a starting point. In terms of random seeks Reiser wins, followed by EXT4, followed by JFS. I'm not sure if this will correlate exactly to directory lookups, but it seems like it would be an indicator. You'll have to do your own tests for that specifically. EXT2 beats the ...


16

"Performance" has many aspects. The n00bs measure the boot time of an OS, and say e.g. Windows 2012 is sooooooo great because it boots in 12 sec on real HD, maybe 1 sec on SSD. But this sort of measure not very useful: performance is equal to OS boot time, but the OS boots once a month so optimizing that doesn't make much sense. Because it's my daily ...


16

Disk & RAM Capacity Planning Planning disk and memory capacity for a database server is a black art. More is better. Faster is better. As general guidelines I offer the following: You want more disk space than you'll EVER need. Take your best estimate of how much disk space you'll need for the next 3-5 years, then double it. You'll want enough RAM to ...


15

You say in your comments that you're evaluating a netboot / network root environment. The first thing you must realize is there is no such thing as "vanilla" - you're not going to run CentOS 5.10 right out of the box with zero changes (if you think you are you're deluding yourself: NFS Root is already at least Strawberry, verging on Pistachio). If you want ...


14

When selecting a CPU architecture for a web-server, you do need to know what you're doing with the server itself. Only you can tell if what you're doing can take advantage of multiple cores, or if it is solidly single-threaded. PassMark's PerformanceTest product test distils CPU performance down to a single number, yet what you're doing with your web-server ...


12

The only way latency would drop appreciably is if the current 100Mbit link is saturated. If it is not saturated, you will likely not notice any change. Additionally, your assumption that the 1Gbit link will be able to support larger packets is incorrect. Max packet size is determined by the MTU of the various devices along the path that the packet takes - ...


11

The performance of your SPDY setup will obviously depend on the implementation of the stack and you should know the processing cost vs. a 'regular' HTTP or HTTPS session, but.. Keep in mind that that the primary point of SPDY is to reduce the latency and overhead of rendering a typical webpage (as seen by your visitors), not to optimize your server-side ...


10

It may also be worth noting that you can run InnoDB without a filesystem and improve performance without filesystem overhead. I'm not sure I'd recommend it, but I've used it before without issues. InnoDB Raw Devices In addition, if you're running at 90% reads and 10% writes, unless you need the transactional ability of InnoDB you might look into porting to ...


9

The "SATA = 7.2K RPM, SAS = 10/15K RPM" mind-set is strong, and (in my opinion anyway) where most of the "SAS is faster than SATA" thinking comes from. There are some slight differences between SAS and SATA drives, notably in their on-board caching algorithms (NCQ vs. TCQ). However, the performance difference of equivalently specced hard-drives will be ...


9

IOPs is the difference your looking for in the "speed". The simple way to explain the difference is that SATA is half duplex and SAS is full duplex. SATA drives are dumb and have to communicate with the controller for operations. SAS drives are smart and only requests and returns use the bus. Depending on your usage case, spending more may not gain ...


8

Microsoft has a tool called SQLIO which will push the IO to the limit. Just build a Windows VM with a disk on the correct data store and run SQLIO. Don't let the name fool you, it doesn't actually require SQL to be installed (it doesn't have anything to do with SQL, it was just built by the SQL team).


8

yes, iperf is the right tool for this. Make sure you use a long interval to allow the traffic stream to grow to 10GbE speeds. You may have to modify TCP window sizes to reach full saturation, as well. Here are some sample command lines... On the server side: iperf -s On the client side: iperf -c server.ip.address -w64k -t60


8

Install one system, boot it and check out the block layer statistics from /sys/block/${DEV}/stat e.g. /sys/block/sda/stat. Quoting from the documentation: The stat file consists of a single line of text containing 11 decimal values separated by whitespace. The fields are summarized in the following table, and described in more detail below: Name ...


8

The short version is that the closest to a recommendation I've seen MySQL make on filesystems is XFS, however ext3 should be ok as well, ext4 promises to be a nice improvement, but it's still not quite stable, although it should be before the end of the year. If you're running cluster filesystems CXFS, OCFS2 and GFS should all be ok. I'd strongly warn ...


8

Creating a block level access to virtual machine state, as opposed to a file level access will always be faster because there is a layer of abstraction removed. I would recommend the LVM approach. Don't forget, you can always backup the LVM volume just like a file. There isn't much difference between the two. LVM is also quite flexible in terms of ...


7

The answers here are seriously deprecated, and need updating as this is coming up in google results. For produciton environments, XFS. Everytime. XFS is journaled and non-blocking. Make sure you have the following variables for a modern (2011/2012) MySQL database using InnoDB in production: innodb_file_per_table = 1 innodb_flush_log_at_trx_commit = 1 # an ...


7

I agree with most of what Andrew said, except that I would recommend Reiser4 or the older (but better supported) ReiserFS. As those tests (and the documentation for ReiserFS) indicate, it is designed for precicesly the situation you are asking about (large numbers of small files or directories). I have used ReiserFS in the past with Gentoo and Ubuntu ...


7

A lot depends on which VT-x features are supported by the processors you are concerned with. The initial implementations didn't provide measurable benefits and in most cases performance was actually degraded. However the recent H/W virtualization features related to Second Level Address Translation (SLAT) implemented by AMD as RVI\NPT with the Shanghai ...


7

The virt-what script will identify many different types of hypervisors and container technologies. It's pre-packaged for most major Linux distributions (e.g. apt-get install virt-what or yum install virt-what) and its output is suitable for use in shell scripts. It correctly performs its detection from inside the virtual guest. Current types of ...


7

Yes. But that is not the question. The difference is normally neglegible (1% to 5%).


7

You can download and install the "stress" utility... It allows you generate CPU, Memory, Disk and IO load from the command line. Homepage: http://people.seas.harvard.edu/~apw/stress/ FAQ: http://people.seas.harvard.edu/~apw/stress/FAQ


7

It is impossible. TCP is statefull protocol. User end computer is involved in every step of connection and it will never answer to two separate servers trying to communicate to it. All you can do is collect all http request on webserver or some proxy and replay them. But that will not give and exact concurrency or traffic conditions of a live server.


7

Here's the way I sometimes test ram: first mount two tmpfs (by default tmpfs is half the ram): # mount -t tmpfs /mnt/test1 /mnt/test1 # mount -t tmpfs /mnt/test2 /mnt/test2 Check free memory and free space: # free total used free shared buffers cached Mem: 252076 234760 17316 0 75856 ...



Only top voted, non community-wiki answers of a minimum length are eligible