服务器性能估算参考(硬件-事务数据库)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

TPC-C模拟一个批发商的订单管理系统 (TPC-H模拟一个证券交易系统)

1. TPC-C性能估算
在性能估算中,我们对系统上线后的运行状况做以下假定:
    l 系统同时在线用户数为250人(U1);
    l 平均每个用户每分钟发出4次数据库访问请求(N1);
    l 系统发出的业务请求中,查询、统计各占2/5,更新占1/5,其中:
        a.平均每次查询业务产生8个事务(T1);
        b.平均每次统计业务产生13个事务(T2);
        c.平均每次更新业务产生3个事务(T3);
        l 日内处理繁忙时的处理量为平均值的3倍;
    l 根据多个项目的实际工程经验,应采取经验系数1.6;
    l 考虑服务器保留30%的冗余;
根据假定及运算公式,所需的数据库服务器的处理性能估算为:
TPC-C= 250*3*(8*2+13*2+3)/5*4*1.6*(1+0.3)= 56,160 TPM

2. 内存大小估算
数据库系统服务器的内存使用过程中,主要由操作系统占用内存、数据库系统占用内存、并发连接占用内存等几部分组成。
项目中,我们根据经验作如下假定:
    l 操作系统占用约0.5G的内存空间;
    l 数据库管理系统占用约1G的内存空间;
    l 每个并发连接占用5M的内存空间;
    l 考虑服务器内存保留30%的冗余;

根据以上假定,数据库服务器的内存估算为:
Mem = (0.5 + 1 + 250*0.005) * (1 + 30%) = 3.6 GB

3. 硬盘大小估算
数据库系统服务器的硬盘使用过程中,主要由操作系统大小、数据库管理系统大小、数据大小,索引大小,日志大小等几组成。
运行中,假设至少使用五年,至少一个备份,我们根据经验作如下假定:
    l 操作系统占用约20G的硬盘空间;
    l 数据库管理系统占用约10G的硬盘空间;
    l 数据大小占用每月新增10G;
    l 数据大小占用每月新增10G;
    l 日志大小占用每月新增5G,仅仅保留半年;
    l 考虑服务器硬盘保留30%的冗余;

根据以上假定,数据库服务器的硬盘估算为:
Disk = (20 + 10 + 10*12*5 + 10*12*5 + 5*6) * 2 * (1+30%) = 3.276 TB

4. 带宽大小估算
数据库系统服务器一般架设在高速内网里,一般要对网站出口带宽做估算。出口带宽主要是网页流量和数据流量,部分数据流量来自缓存系统,部分来自数据库系统。
来自数据库系统的主要是查询和事务处理,对速度要求大,带宽不一定大,可忽略数据库系统对带宽的要求。也暂时忽略缓存大小估算以及缓存系统相关带宽。

    
5.其他考虑因素
  a. TPC-C和现有硬件所宣称的指标差距太大,宣称的能力是估算的10倍
  b. 实际中带宽往往是瓶颈,但不同应用类型带宽估计差异很大
  c. Session/Process/Mem-Disk Load&Unload在实际中的代价无法这样估算出来
  d. 大型应用还会使用缓存系统,队列服务,检索服务以及各自的集群/负载均衡等

转载于:https://my.oschina.net/igooglezm/blog/867315

你可能感兴趣的:(服务器性能估算参考(硬件-事务数据库))