对您的应用程序和数据库进行基准测试,找出瓶颈所在。修复一个瓶颈后(或用“虚拟”模块替换它),您可以继续识别下一个瓶颈。即使你的应用程序目前的整体性能是可以接受的,你至少应该为每个瓶颈制定一个计划,并决定如果有一天你真的需要额外的性能如何解决它。
免费的基准套件是开源数据库基准,可从http://osdb.sourceforge.net/获得。
仅当系统负载非常大时才会出现问题是很常见的。我们有许多客户在生产中有(经过测试的)系统并遇到负载问题时与我们联系。在大多数情况下,性能问题是由于基本数据库设计问题(例如,表扫描在高负载下表现不佳)或操作系统或库问题所致。大多数时候,如果系统尚未投入生产,这些问题会更容易解决。
为避免此类问题,请在可能的最坏负载下对整个应用程序进行基准测试:
mysqlslap程序有助于模拟多个客户端同时发出查询所产生的高负载。请参阅第 4.5.8 节,“mysqlslap — 负载仿真客户端”。
您还可以尝试基准测试包,例如 SysBench 和 DBT2,可从 https://launchpad.net/sysbench和 http://osdldbt.sourceforge.net/#dbt2获得。
这些程序或包可能会使系统崩溃,因此请确保仅在您的开发系统上使用它们。