Why Benchmark?

Many medium to large MySQL deployments have staff dedicated to benchmarking.
However, every developer and DBA should be familiar with basic benchmarking
principles and practices, because they’re broadly useful. Here are some things benchmarks
can help you do:
Measure how your application currently performs. If you don’t know how fast it
currently runs, you can’t be sure any changes you make are helpful. You can also
use historical benchmark results to diagnose problems you didn’t foresee.
Validate your system’s scalability. You can use a benchmark to simulate a much
higher load than your production systems handle, such as a thousand-fold
increase in the number of users.
Plan for growth. Benchmarks help you estimate how much hardware, network
capacity, and other resources you’ll need for your projected future load. This can
help reduce risk during upgrades or major application changes.
Test your application’s ability to tolerate a changing environment. For example,
you can find out how your application performs during a sporadic peak in concurrency
or with a different configuration of servers, or you can see how it handles
a different data distribution.
Test different hardware, software, and operating system configurations. Is RAID
5 or RAID 10 better for your system? How does random write performance
change when you switch from ATA disks to SAN storage? Does the 2.4 Linux
kernel scale better than the 2.6 series? Does a MySQL upgrade help performance?
What about using a different storage engine for your data? You can
answer these questions with special benchmarks.
You can also use benchmarks for other purposes, such as to create a unit test suite
for your application, but we focus only on performance-related aspects here.
posted on 2009-12-05 18:25  Keep Walking  阅读(347)  评论(0编辑  收藏  举报