单台高并发高存储(8G内存16核30G硬盘)
<h3>1.使用mysqlslap测试并发以及用 mysql workbench检测吞吐量</h3>
<pre><code>测试带有索引的数据库语句select * from agency where name ='1' limit 100</code></pre>
<h3>2.以下是的数据量测试并发 使用的虚拟机是8G内存 cpu是16核 30G硬盘</h3>
<pre><code>测试环境是在虚拟机41上测试44这台虚拟机的并发和吞吐量
在mysql/bin在
输入./mysqlslap -h192.168.1.41 -uroot -pkyd8899 --concurrency=100 --iterations=20 --create-schema=QIWUIOT --query="select * from agency where name='1' limit 100 ;" --engine=innodb --number-of-queries=220000</code></pre>
<h3>3.测试用例在windows上本机测试测试192.168.1.41虚拟机</h3>
<p>局域网(Local Area Network,LAN)是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。</p>
<h3>4.测试用例在192.168.1.44虚拟机上测试192.168.1.41虚拟机</h3>
<p>桥接介绍:一般的交换机,网桥就有桥接作用。就交换机来说,本身有一个端口与mac的映射表,通过这些,隔离了冲突域(collision)。 简单的说就是通过网桥可以把两个不同的物理局域网连接起来,是一种在链路层实现局域网互连的存储转发设备。网桥从一个局域网接收MAC帧,拆封、校对、校验之后 ,按另一个局域网的格式重新组装,发往它的物理层,通俗的说就是通过一台设备(可能不止一个)把几个网络串起来形成的连接,比如图中就是一种通过桥接来实现无路由双机上网的连接方案</p>
<h3>5.局域网高并发高存储测试数据</h3>
<table>
<thead>
<tr>
<th>数据量 (万)</th>
<th>线程数</th>
<th>总查询数(万)</th>
<th>测试环境(8G 16核)</th>
<th>吞吐量(局域网)</th>
<th>1个线程处理(总查询数/线程数)s</th>
<th>单个语句处理时间</th>
<th>百兆带宽</th>
</tr>
</thead>
<tbody>
<tr>
<td>500w</td>
<td>100</td>
<td>22w</td>
<td>局域网</td>
<td>7000~8000</td>
<td></td>
<td>0.003s</td>
<td>33MB/s</td>
</tr>
<tr>
<td>1000w</td>
<td>100</td>
<td>22w</td>
<td>局域网</td>
<td>7817左右</td>
<td>118/2200=0.08s</td>
<td>0.003s</td>
<td>33MB/s</td>
</tr>
<tr>
<td>2000w</td>
<td>100</td>
<td>22w</td>
<td>局域网</td>
<td>7785左右</td>
<td>174/2200=0.079s</td>
<td>0.004s</td>
<td>33MB/s</td>
</tr>
<tr>
<td>4000w</td>
<td>100</td>
<td>22w</td>
<td>局域网</td>
<td>7770~7804</td>
<td>173/2200=0.078s</td>
<td>0.002s</td>
<td>33.75MB/s</td>
</tr>
<tr>
<td>5000w</td>
<td>100</td>
<td>22w</td>
<td>局域网</td>
<td>7534~7850</td>
<td>173/2200=0.078s</td>
<td>0.004s</td>
<td>33MB/s</td>
</tr>
<tr>
<td>6000w</td>
<td>100</td>
<td>22w</td>
<td>局域网</td>
<td>5251~7850</td>
<td>191/2200=0.086s</td>
<td>0.003s</td>
<td>33.63MB/s</td>
</tr>
<tr>
<td>6500w</td>
<td>100</td>
<td>22w</td>
<td>局域网</td>
<td>5127~7319</td>
<td>199.9/2200=0.09s</td>
<td>0.003s</td>
<td>33MB/s</td>
</tr>
</tbody>
</table>
<pre><code>总结:使用8G16核30G硬盘的虚拟机最大增加数据是6500w左右,磁盘已经不足,如果硬盘增大那么数据最大容纳量也会提高。在线程数和总查询数以及测试环境不变的情况下,当数据量不断增加的同时,在千万级别的这个单个语句处理时间基本不变,其传输数据的速率稳定在33M/s,在硬盘够大时,数据增加到7000w,8000w,9000w,1亿的时候使用其速率是不会改变的,而吞吐率会达到估计值4000~7000这样。也就是硬盘够大,8G内存cpu是16核可以支撑起1亿的数据量。</code></pre>
<h3>6.桥接高并发高存储测试数据</h3>
<table>
<thead>
<tr>
<th>数据量 (万)</th>
<th>线程数</th>
<th>总查询数(万)</th>
<th>测试环境 (8G16核)</th>
<th>吞吐量(桥接)</th>
<th>单线程处理时间</th>
<th>单个语句处理时间</th>
<th>千兆带宽</th>
</tr>
</thead>
<tbody>
<tr>
<td>500w</td>
<td>100</td>
<td>22w</td>
<td>桥接</td>
<td>35000~36000</td>
<td></td>
<td>0.003s</td>
<td>156MB/s</td>
</tr>
<tr>
<td>1000w</td>
<td>100</td>
<td>22w</td>
<td>桥接</td>
<td>40835</td>
<td>16/2200=0.007s</td>
<td>0.003s</td>
<td>174MB/s</td>
</tr>
<tr>
<td>2000w</td>
<td>100</td>
<td>22w</td>
<td>桥接</td>
<td>27418~28000</td>
<td>24/2200=0.011s</td>
<td>0.004s</td>
<td>120MB/s</td>
</tr>
<tr>
<td>4000w</td>
<td>100</td>
<td>22w</td>
<td>桥接</td>
<td>37248左右</td>
<td>18/2200=0.008s</td>
<td>0.004s</td>
<td>161.9MB/s</td>
</tr>
<tr>
<td>5000w</td>
<td>100</td>
<td>22w</td>
<td>桥接</td>
<td>37133~39151</td>
<td>17.239/2200=0.0077s</td>
<td>0.004s</td>
<td>163.57MB/s</td>
</tr>
<tr>
<td>6000w</td>
<td>200</td>
<td>22w</td>
<td>桥接</td>
<td>35478左右</td>
<td>18/1100=0.016s</td>
<td>0.004s</td>
<td>150MB/s</td>
</tr>
<tr>
<td>6000w</td>
<td>100</td>
<td>22w</td>
<td>桥接</td>
<td>35353左右</td>
<td>18/2200=0.008s</td>
<td>0.004s</td>
<td>150MB/s</td>
</tr>
<tr>
<td>6500w</td>
<td>100</td>
<td>22w</td>
<td>桥接</td>
<td>35566左右</td>
<td>18.36/2200=0.0083s</td>
<td>0.004s</td>
<td>148MB/s</td>
</tr>
</tbody>
</table>
<pre><code>总结:由此数据可以得知在桥接环境下吞吐率以及传输速率是局域网的5倍左右,显然速率很快
由于磁盘不足导致数据无法增长,得出结论8G内存cpu为16核30G硬盘支撑不起上亿数据的。只有增加大容量硬盘才可以上亿,而且支持一个亿吞吐率和传输速率估计值分别在20000~30000 120MB/s左右</code></pre>