测试数据库dblink在高并发时候对服务器性能影响

Dblink对服务器的性能消耗

一、      测试目的:

测试当有多个用户同时调用含有使用dblink写远程数据库表的存储过程的时候,对数据库服务器的性能消耗如何。通过同样数量级的并发数测试,对比直接写本地表的存储过程被调用对服务器的性能消耗。

二、      测试环境

1主机:

12.222服务(Intel(R) Xeon(TM) CPU 3.00GHz  双核4线程 2G内存)

2操作系统

Linux testdb 2.6.9-78.ELsmp #1 SMP Wed Jul 9 15:46:26 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux

3数据库配置:

sga_max_size                         big integer 496M

sga_target                           big integer 496M

pga_aggregate_target                 big integer 165M

 

三、 测试脚本

详见《脚本》

四、 测试

4.1、场景一
4.1.1参数

l       开启线程数据=100

l       每个线程执行参数 执行频率=1/    总执行次数10

4.1.2测试结果

测试结果说明:

灰色:服务器正常工作时候状态。

黄色:多线程调用存储过程状态。

 

关于vmstatmpstat参数说明

Vmsta

r :置于运行队列中的内核线程数目。

b :置于等待队列(等待资源、等待输入/输出)的内核线程数目。

内存:关于使用虚拟内存和实内存的信息。如果虚拟页已经被访问的话,虚拟页可以被认为是活动的。一页为 4096 个字节。

si: 从磁盘交换到内存的交换页数量,单位:KB/
  so: 从内存交换到磁盘的交换页数量,单位:KB/
  IO
  bi: 发送到块设备的块数,单位:块/

  bo: 从块设备接收到的块数,单位:块/
  System
  in: 每秒的中断数,包括时钟中断

  cs: 每秒的环境(上下文)切换次数
  CPU
  按 CPU 的总使用百分比来显示

  us: CPU 使用时间

  sy: CPU 系统使用时间
  id: 闲置时间

l       跨库写

1.Vmstat

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

0  0 792416 510036   3844 1073800    0    0     0    12 1022    71  0  0 100  0

 0  0 792416 510028   3844 1073800    0    0     0    88 1036   119  0  0 100  0

 2  0 792416 437020   3860 1073988    0    0    32   268 1248  1178 11 10 79  0

 8  0 792404 314724   3868 1074592    6    0   186   460 1538  3389 42 34 23  1

 5  0 792400 248788   3876 1075060    2    0   212   596 1539  3388 56 41  2  0

6  0 792396 216812   3896 1075792    0    0   300   668 1501  3581 55 43  2  0

 7  0 792380 182308   3896 1076752    4    0   218   504 1484  3606 55 41  4  0

 7  0 792372 161036   3908 1077356    2    0   250   702 1494  3648 56 43  2  0

 4  0 792368 131844   3924 1078020    2    0   154   774 1456  3597 55 41  3  0

 8  0 792352 188756   3924 1078712    2    0   196   512 1508  3583 55 42  3  0

 9  0 792340 254700   3940 1079440    8    0   298   882 1536  3539 56 43  1  0

 9  2 792280 237452   3948 1080280   48    0   330   562 1553  3340 56 42  2  0

 8  0 792276 255028   3956 1080888    0    0   284   590 1832  3837 56 41  2  0

 2  0 792276 292492   3964 1081764    0    0   326   736 1515  3894 47 37 16  1

 3  0 792276 327748   3972 1082368    0    0   206   498 1375  3832 33 27 39  1

 1  0 792276 362564   3988 1082556    0    0   110   444 1302  3368 24 20 55  1

 1  0 792276 410856   3988 1082760    0    0    64   282 1236  2433 16 13 70  1

 0  0 791456 456484   4016 1084068  490    0   702   200 1197  1311  7  5 84  3

 0  0 791456 486172   4032 1084052    0    0     0   124 1054   121  0  0 99  0

 0  0 791456 485932   4048 1084104    0    0    50   122 1042   148  2  0 97  1

 0  0 791456 486108   4076 1084144    0    0    22   110 1033    96  0  0 99  1

 0  0 791456 486388   4076 1084144    0    0     0     0 1020    78  0  0 100  0

 0  0 791456 486580   4084 1084136    0    0     2   102 1077   115  0  0 100  0

 0  0 791456 486812   4084 1084136    0    0     0    72 1123    93  0  0 100  0

 0  1 791456 487012   4100 1084120    0    0     8   198 1116   134  0  0 99  0

2.mpstat

11:30:54 AM  CPU   %user   %nice %system %iowait    %irq   %soft   %idle    intr/s

11:30:55 AM  all    0.00    0.00    0.00    0.50    0.00    0.00   99.50   1035.00

11:30:56 AM  all    0.00    0.00    0.00    0.25    0.00    0.00   99.75   1007.92

11:30:57 AM  all    0.75    0.00    0.25    0.00    0.00    0.00   99.00   1052.00

11:30:58 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1000.00

11:30:59 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1030.00

11:31:00 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1023.00

11:31:01 AM  all   10.25    0.00    8.50    1.00    0.00    0.25   80.00   1218.18

11:31:02 AM  all   26.07    0.00   21.55    0.75    0.00    0.25   51.38   1457.43

11:31:03 AM  all   40.45    0.00   30.52    0.50    0.25    0.99   27.30   1517.65

11:31:04 AM  all   52.87    0.00   38.90    0.25    0.00    1.00    6.98   1535.35

11:31:05 AM  all   52.87    0.00   42.39    0.25    0.25    1.25    2.99   1539.39

11:31:06 AM  all   56.75    0.00   40.75    0.25    0.00    1.00    1.25   1486.00

11:31:07 AM  all   56.86    0.00   40.40    0.25    0.00    1.00    1.50   1538.00

11:31:08 AM  all   56.14    0.00   40.35    0.25    0.00    1.25    2.01   1457.43

11:31:09 AM  all   56.58    0.00   40.45    0.50    0.00    0.99    1.49   1499.01

11:31:10 AM  all   56.86    0.00   40.65    0.00    0.25    1.00    1.25   1483.84

11:31:11 AM  all   54.36    0.00   38.90    0.25    0.00    1.50    4.99   1466.34

11:31:12 AM  all   57.50    0.00   40.00    0.00    0.00    1.25    1.25   1529.00

11:31:13 AM  all   57.25    0.00   40.50    0.25    0.00    1.00    1.00   1455.45

11:31:14 AM  all   53.00    0.00   40.00    0.00    0.25    1.25    5.50   1468.00

11:31:15 AM  all   55.50    0.00   41.50    0.00    0.00    1.25    1.75   1501.00

11:31:16 AM  all   56.27    0.00   40.54    0.25    0.25    0.98    1.72   1543.00

11:31:17 AM  all   54.39    0.00   39.85    0.50    0.00    1.25    4.01   1508.82

11:31:18 AM  all   56.86    0.00   40.65    0.25    0.00    1.25    1.00   1549.49

11:31:19 AM  all   55.50    0.00   41.00    0.00    0.00    0.75    2.75   1535.00

11:31:20 AM  all   55.11    0.00   40.90    0.25    0.00    1.00    2.74   1512.00

11:31:21 AM  all   56.00    0.00   41.50    0.00    0.25    1.00    1.25   1547.00

11:31:22 AM  all   52.62    0.00   37.16    0.25    0.00    1.25    8.73   1471.00

11:31:23 AM  all   45.36    0.00   34.09    0.50    0.00    1.25   18.80   1426.26

11:31:24 AM  all   36.09    0.00   27.82    0.25    0.00    0.75   35.09   1365.35

11:31:25 AM  all   34.33    0.00   26.62    0.75    0.25    1.00   37.06   1365.00

11:31:26 AM  all   27.07    0.00   22.56    0.25    0.00    1.00   49.12   1336.00

11:31:27 AM  all   28.50    0.00   20.50    1.00    0.00    0.75   49.25   1346.00

11:31:28 AM  all   21.00    0.00   19.00    0.75    0.00    0.75   58.50   1250.50

11:31:29 AM  all   13.78    0.00   11.28    0.00    0.00    0.25   74.69   1241.41

11:31:30 AM  all    9.98    0.00    8.73    0.25    0.00    0.50   80.55   1172.28

11:31:31 AM  all    5.28    0.00    4.02    0.00    0.00    0.00   90.70   1139.39

11:31:32 AM  all    1.24    0.00    0.75    1.74    0.00    0.25   96.02   1096.97

11:31:33 AM  all    0.00    0.00    0.00    0.25    0.00    0.00   99.75   1037.00

11:31:34 AM  all    0.25    0.00    0.00    0.00    0.00    0.00   99.75    996.04

11:31:35 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1034.00

l       本库写

1.       vmstat

 

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

0  0 786556 526172   5372 1093548    0    0     0   144 1042   115  0  0 100  0

 0  1 786556 526172   5376 1093544    0    0     0    40 1009    70  0  0 100  0

 0  0 786556 526172   5380 1093540    0    0     0    12 1035   123  0  0 100  0

 1  0 786556 463540   5380 1093608    0    0    44   272 1362   740  7  8 85  0

 0  0 786556 381500   5388 1093736    0    0   132   516 1605  1187 12  9 78  1

 0  0 786336 300076   5404 1094760  404    0  1184   540 1727  1447 12 11 69  8

 2  0 786336 217252   5404 1095168    0    0   256   932 1844  1662 13 10 77  1

 2  1 786336 130076   5404 1095644    0    0   304   944 1919  1865 14 12 74  1

 0  0 786324  46468   5412 1096292   36    0   400  1224 2055  2135 18 11 68  3

 0  0 786412  26028   5312 1083152    4    0   420  1720 1935  2011 10  6 81  3

 0  1 786404  24044   5312 1083652   52    0   476  1148 1798  1728  4  1 92  2

 0  0 786444  27116   5300 1078264   12    0   436  1328 1792  1696  4  2 91  3

 0  1 786440  25524   5304 1078944    0    0   416  1336 1778  1661  4  2 93  1

 0  0 786440  80588   5312 1079548    0    0   328  1096 1730  1460  5  2 92  2

 0  0 786436 161932   5320 1079948    4    0   300   908 1685  1300  5  3 92  1

 0  1 786428 243596   5320 1080356    8    0   240   840 1560  1068  3  2 94  1

 0  0 786424 325132   5320 1080564    0    0   184   536 1457   877  2  2 95  1

 0  0 786304 414548   5320 1080752    0    0   104   288 1319   564  2  2 96  0

 0  0 786296 497100   5320 1080820    8    0    44   320 1225   375  1  2 97  1

 0  0 786296 538380   5328 1080880    0    0    20    68 1083   191  1  0 98  0

 0  0 786296 538420   5328 1080880    0    0     0     0 1032    83  0  0 100  0

 0  0 786296 538420   5328 1080880    0    0     0   144 1029    93  0  0 100  0

2.mpstat

11:34:49 AM  CPU   %user   %nice %system %iowait    %irq   %soft   %idle    intr/s

11:34:50 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1020.00

11:34:51 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1034.00

11:34:52 AM  all    1.00    0.00    0.00    0.00    0.00    0.00   99.00   1033.00

11:34:53 AM  all    8.96    0.00    8.21    1.74    0.00    0.25   80.85   1433.00

11:34:54 AM  all   10.53    0.00   10.03    0.75    0.00    0.00   78.70   1554.90

11:34:55 AM  all   12.22    0.00    9.73    1.25    0.25    0.25   76.31   1736.36

11:34:56 AM  all   13.00    0.00   10.00    1.00    0.00    0.25   75.75   1793.07

11:34:57 AM  all   16.04    0.00   11.78    2.51    0.00    0.25   69.42   2105.05

11:34:58 AM  all   13.75    0.00   11.75   10.25    0.25    0.50   63.50   2192.00

11:34:59 AM  all    8.25    0.00    6.00    7.25    0.00    0.00   78.50   1921.21

11:35:00 AM  all    5.01    0.00    1.25    3.01    0.00    0.25   90.48   1758.42

11:35:01 AM  all    4.74    0.00    1.25    3.24    0.25    0.25   90.27   1779.00

11:35:02 AM  all    5.50    0.00    1.50    3.75    0.00    0.25   89.00   1760.61

11:35:03 AM  all    5.00    0.00    2.00    2.75    0.00    0.25   90.00   1767.33

11:35:04 AM  all    3.99    0.00    2.49    4.74    0.00    0.25   88.53   1636.36

11:35:05 AM  all    3.24    0.00    1.75    1.25    0.25    0.25   93.27   1486.27

11:35:06 AM  all    2.01    0.00    1.75    1.00    0.00    0.00   95.24   1398.00

11:35:07 AM  all    2.75    0.00    1.75    1.25    0.00    0.00   94.25   1330.30

11:35:08 AM  all    0.75    0.00    1.50    0.25    0.00    0.25   97.25   1188.89

11:35:09 AM  all    2.49    0.00    1.00    0.00    0.00    0.00   96.51   1061.76

11:35:10 AM  all    0.00    0.00    0.00    0.25    0.00    0.00   99.75   1019.00

11:35:11 AM  all    0.00    0.00    0.00    0.25    0.00    0.00   99.75   1035.00

11:35:12 AM  all    1.24    0.00    0.25    0.25    0.00    0.00   98.26   1031.00

11:35:13 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1032.00

11:35:14 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1022.00

11:35:15 AM  all    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1038.00

 

分析结果:

线程数基本看不出差别,连接数一致。

Swap使用,io,以及内存使用基本相同。

 

相差比较大的是cpu的使用率:

跨库情况下cpu的空闲率在10%以下。

本地写情况下cpu的空闲率在60%-90%附近。

 

4.2、场景二
4.2.1参数

l       开启线程数据=20

l       每个线程执行参数 执行频率=1/    总执行次数100

4.2.2测试结果

l       跨库:

1.       vmstat

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

 0  0 731112  38084   6840 1419432    0    0    52   760 1573  3100 20 16 63  1

 2  0 731112  34036   6840 1419500    0    0    16   584 1668  3312 17 14 69  0

 4  1 731112  28332   6840 1420316    0    0    52  1460 1711  3438 19 14 65  2

 2  0 731112  30972   6848 1420784    0    0   148  1196 1737  3299 19 15 64  2

 1  0 731112  39548   6776 1413104    0    0    44   852 1790  3369 20 16 63  2

 2  1 731100  38132   6788 1413644    4    0    60  1204 1726  3234 23 17 58  2

 1  0 731076  38780   6796 1414252   20    0   104  1484 1874  3683 20 15 63  2

 0  0 731076  42244   6796 1414252    0    0    20   728 1918  3818 20 15 63  1

 2  1 731068  38508   6804 1414992    8    0    76  1428 1800  3484 18 15 63  3

 0  0 731068  42620   6804 1415060    0    0    88   604 1677  3430 20 16 63  1

 0  0 731068  41148   6812 1415256    0    0   140   800 1637  3296 19 15 64  2

 1  2 731068  31788   6812 1415596    0    0   112   900 1654  3413 20 16 64  2

 3  0 731068  35692   6812 1415868    0    0    32  1012 1827  3341 21 14 62  2

 4  0 731068  29716   6820 1415996    0    0    56   660 1797  3237 18 14 67  1

 0  1 731068  39668   6820 1416676    0    0    40  1228 1737  3323 18 15 65  2

 1  0 731068  39092   6828 1416940    0    0    92  1168 1810  3455 22 17 60  2

 1  0 731064  36724   6828 1417148    0    0    80   732 1780  3455 20 15 64  0

 1  1 731064  34100   6828 1417556    0    0   100  1088 1781  3510 21 17 61  1

 0  0 731064  38204   6836 1418364    0    0    68  1500 1895  3634 20 17 62  2

 2  0 731064  32876   6836 1418364    0    0    28   600 1794  3332 20 15 65  1

 2  1 731064  33396   6844 1418832    0    0    16  1260 1778  3512 19 16 63  2

 0  0 731064  33844   6800 1417720    0    0    16  2000 1932  3681 21 15 62  3

 3  0 731064  32300   6800 1417720    0    0   120   792 1857  3517 21 15 64  1

 1  1 731064  33524   6808 1418460    0    0    40  1320 1822  3389 19 14 65  2

 1  0 731064  35372   6708 1411148    0    0   108   800 1777  3645 19 16 64  1

 0  0 731052  40116   6720 1411324   28    0   252   672 1672  3201 20 16 63  1

 3  2 731052  27604   6720 1411800    0    0    44   948 1720  3225 19 15 65  0

 1  0 731052  41580   6648 1406364    0    0    16  1332 1663  3098 20 15 63  3

2.mpstat

12:04:06 PM  CPU   %user   %nice %system %iowait    %irq   %soft   %idle    intr/s

12:04:07 PM  all   19.95    0.00   13.47    1.00    0.00    0.50   65.09   1905.00

12:04:08 PM  all   18.55    0.00   14.29    0.75    0.00    0.50   65.91   1843.43

12:04:09 PM  all   17.75    0.00   14.50    3.00    0.25    0.75   63.75   1811.00

12:04:10 PM  all   20.55    0.00   15.29    1.25    0.00    0.75   62.16   1561.00

12:04:11 PM  all   18.50    0.00   13.75    1.00    0.00    0.50   66.25   1637.62

12:04:12 PM  all   21.25    0.00   15.25    3.50    0.25    0.50   59.25   1753.00

12:04:13 PM  all   21.55    0.00   14.79    1.00    0.00    0.50   62.16   1902.04

12:04:14 PM  all   19.00    0.00   15.50    0.25    0.25    0.75   64.25   1716.83

12:04:15 PM  all   19.50    0.00   15.00    2.50    0.00    0.75   62.25   1781.82

12:04:16 PM  all   18.80    0.00   13.03    1.00    0.25    0.25   66.67   1754.00

12:04:17 PM  all   21.75    0.00   16.00    0.50    0.00    0.75   61.00   1835.71

12:04:18 PM  all   19.75    0.00   16.00    2.25    0.00    0.50   61.50   1759.22

12:04:19 PM  all   18.55    0.00   14.29    0.50    0.25    1.00   65.41   1912.24

12:04:20 PM  all   18.30    0.00   14.29    0.50    0.00    0.50   66.42   1747.52

12:04:21 PM  all   20.25    0.00   15.25    4.25    0.00    0.75   59.50   1904.00

12:04:22 PM  all   20.25    0.00   13.00    0.75    0.00    0.50   65.50   1859.00

12:04:23 PM  all   19.45    0.00   13.97    0.50    0.25    0.50   65.34   1829.70

12:04:24 PM  all   20.85    0.00   16.08    2.26    0.00    0.75   60.05   1845.45

12:04:25 PM  all   20.45    0.00   15.71    1.00    0.00    0.50   62.34   1629.00

12:04:26 PM  all   19.80    0.00   16.04    0.50    0.25    0.50   62.91   1804.00

12:04:27 PM  all   20.00    0.00   14.00    2.50    0.00    0.50   63.00   1648.00

12:04:28 PM  all   19.50    0.00   15.00    0.50    0.00    0.75   64.25   1610.00

12:04:29 PM  all   20.50    0.00   15.25    1.00    0.25    0.25   62.75   1771.72

12:04:30 PM  all   25.00    0.00   17.25    2.25    0.00    0.50   55.00   1765.00

12:04:31 PM  all   20.55    0.00   14.54    1.50    0.00    0.75   62.66   1780.00

12:04:32 PM  all   20.25    0.00   14.25    0.50    0.25    0.75   64.00   1763.00

12:04:33 PM  all   19.05    0.00   15.29    2.01    0.00    0.75   62.91   1709.80

12:04:34 PM  all   19.90    0.00   15.92    1.99    0.25    0.75   61.19   1750.00

12:04:35 PM  all   19.85    0.00   15.08    3.52    0.00    0.50   61.06   1765.66

12:04:36 PM  all   19.25    0.00   13.75    4.75    0.25    0.50   61.50   1817.00

12:04:37 PM  all   20.05    0.00   12.53    0.75    0.00    1.00   65.66   1759.80

12:04:38 PM  all   21.45    0.00   16.46    1.00    0.00    0.75   60.35   1766.33

12:04:39 PM  all   21.36    0.00   16.58    1.76    0.00    0.50   59.80   1727.00

12:04:40 PM  all   17.46    0.00   12.97    0.75    0.00    0.50   68.33   1551.49

l       本地

1.mpstat

12:06:24 PM  CPU   %user   %nice %system %iowait    %irq   %soft   %idle    intr/s

12:06:25 PM  all    2.01    0.00    1.00    1.25    0.00    0.25   95.49   1826.26

12:06:26 PM  all    2.49    0.00    1.00    1.75    0.25    0.00   94.51   1900.00

12:06:27 PM  all    2.24    0.00    0.75    3.73    0.00    0.25   93.03   1913.00

12:06:28 PM  all    2.76    0.00    1.00    1.50    0.00    0.25   94.49   1777.45

12:06:29 PM  all    3.51    0.00    2.51    1.75    0.00    0.25   91.98   1772.73

12:06:30 PM  all    2.26    0.00    1.25    4.76    0.25    0.25   91.23   1793.07

12:06:31 PM  all    4.74    0.00    1.75    0.75    0.00    0.25   92.52   1728.57

12:06:32 PM  all    3.00    0.00    1.00    2.25    0.25    0.00   93.50   1748.51

12:06:33 PM  all    1.75    0.00    0.50    4.49    0.00    0.25   93.02   1803.03

12:06:34 PM  all    2.76    0.00    1.75    1.00    0.25    0.00   94.24   1746.53

12:06:35 PM  all    2.50    0.00    1.25    1.25    0.00    0.25   94.75   1786.87

12:06:36 PM  all    2.51    0.00    1.00    5.01    0.00    0.25   91.23   1687.00

12:06:37 PM  all    3.49    0.00    1.25    1.50    0.25    0.00   93.52   1869.00

12:06:38 PM  all    2.00    0.00    1.25    0.50    0.00    0.25   96.00   1883.00

12:06:39 PM  all    2.26    0.00    1.25    4.01    0.00    0.00   92.48   1779.00

12:06:40 PM  all    2.00    0.00    0.75    7.48    0.25    0.25   89.28   1837.00

12:06:41 PM  all    3.01    0.00    1.75    2.26    0.00    0.25   92.73   1829.00

12:06:42 PM  all    3.25    0.00    0.75    2.75    0.00    0.25   93.00   1873.74

2.       vmstat

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

 0  0 728076  29060   6788 1421020    4    0   228   696 1803  1438  2  1 94  3

 1  0 728072  28292   6796 1421760    4    0   112  1552 1858  1631  3  1 94  2

 0  0 728064  28356   6796 1421828    8    0    92   624 1743  1366  2  1 96  1

 0  0 728056  28028   6796 1422168    8    0   196   620 1777  1342  3  2 95  1

 0  0 728040  26492   6796 1423460   16    0   100  1972 1778  1504  1  1 95  3

 0  0 728040  26420   6804 1423588    0    0    88   772 1818  1476  5  2 93  1

 0  0 728028  26228   6804 1423656   12    0   100   692 1768  1526  3  1 96  1

 0  0 728024  25588   6812 1424464    4    0    88  1576 1852  1504  2  1 93  3

 0  0 728012  25652   6812 1424600   12    0   108   620 1801  1407  2  1 96  1

 0  1 728012  25204   6812 1424804    0    0   160   696 1881  1563  2  1 95  1

 0  0 728012  23804   6828 1426080    0    0   148  2340 1940  1663  2  2 90  6

 0  0 727980  23292   6828 1426376    8    0   212   788 1903  1600  4  2 92  2

 0  0 727980  29052   6776 1420852    0    0    88   704 1813  1444  3  1 95  1

 1  0 727980  28284   6776 1421464    0    0    88  1288 1843  1519  2  1 94  3

 0  0 727980  28356   6776 1421532    0    0    88   812 1852  1533  3  2 95  1

 0  0 727980  32844   6784 1421660    0    0   148   744 1857  1469  2  2 95  1

 0  0 727980  31820   6784 1422748    0    0    84  1612 1803  1472  3  1 93  2

 0  0 727980  26820   6792 1422808    0    0    84   728 1834  1468  3  1 95  0

 0  0 727980  26500   6792 1422944    0    0   100   632 1774  1395  3  1 95  1

 0  0 727980  25540   6792 1423692    0    0    76  1428 1784  1484  2  1 96  2

 2  0 727980  25732   6800 1423820    0    0   104   668 1705  1248  2  1 95  1

 0  0 727980  25604   6800 1423888    0    0   100   596 1781  1446  3  2 95  1

 0  0 727980  24068   6800 1425180    0    0   100  1940 1803  1429  3  2 92  4

 0  0 727980  23748   6808 1425376    0    0    80   772 1821  1467  1  0 97  1

 0  0 727980  23620   6808 1425580    0    0   124   608 1925  1604  3  2 94  1

 0  0 727980  28420   6764 1420932    0    0    96  1960 1851  1470  3  1 93  3

 1  0 727980  24132   6660 1425116    0    0 15900   792 2520  2476  6  2 71 21

 0  1 727452  23492   6460 1426796    0    0 30776   556 2284  2010  4  4 70 22

 0  0 727328  23620   6372 1426576  228    0 10896  2012 2048  1865  3  1 79 17

 1  0 727320  29060   6324 1421052    4    0   196   752 1821  1492  2  1 95  1

 5  0 727320  28740   6332 1421180    0    0    72   728 1749  1352  2  1 96  2

 0  0 727320  27524   6332 1422472    0    0    84  1940 1889  1472  3  1 92  4

 0  0 727320  27204   6332 1422676    0    0   160   712 1941  1487  3  2 93  1

 0  0 727320  27140   6332 1422744    0    0    96   576 1913  1453  3  1 96  1

 

分析结果:

我们将并发设置到20,小于场景一的100,可以看出cpu消耗明显少了。

相差比较大的是cpu的使用率:

跨库情况下cpu的空闲率在60%左右。

本地写情况下cpu的空闲率在90%附近。

 

4.3、场景三

使用dblink调用频率对性能的影响

4.3.1参数

l       开启线程数据=20

l       每个线程执行参数   总执行次数100

l       对比执行频率=1/1秒,1/300毫秒

4.3.2测试结果

l       1/1

1.       vmstat

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

2  0 613640  35588   4904 1395212    0    0    80   664 1227  2094 16 14 69  1

 1  0 613640  37580   4904 1395280    0    0    84   284 1207  2331 16 15 69  0

 0  1 613640  36476   4904 1396232    0    0    84  1160 1247  2332 18 14 66  3

 0  0 613640  40964   4904 1396300    0    0    88   340 1206  2329 21 15 64  0

 0  0 613640  40836   4904 1396436    0    0   148   288 1246  2397 18 14 68  0

 2  0 613640  31348   4924 1397708    0    0   332  1932 1340  2754 19 15 63  3

 0  0 613640  39108   4932 1398040    0    0   288   548 1257  2493 15 14 69  3

 2  0 613640  36212   4932 1398244    0    0   104   296 1200  2304 15 13 72  0

 1  1 613640  34620   4932 1399332    0    0    56  1328 1240  2501 17 13 69  2

 3  0 613640  32300   4932 1399808    0    0    76   724 1222  2342 15 13 71  2

 3  0 613640  36596   4940 1400004    0    0   148   472 1228  2372 16 12 72  1

 1  1 613640  30908   4948 1401764    0    0   148  1860 1233  2477 15 14 68  2

 2  0 613640  30004   4952 1401964    0    0    84   508 1233  2269 15 12 72  1

 0  0 613640  34884   4960 1402024    0    0    96   292 1214  2501 15 14 70  1

 3  0 613636  33588   4960 1402880   32    0   276   856 1240  2474 16 14 68  2

 2  0 613824  34996   4916 1396952    0    0   100   636 1227  2446 17 14 69  1

 0  0 613824  39684   4924 1396944    0    0    88   308 1217  2287 16 13 71  1

 1  0 613820  35516   4924 1398172    0    0   284  1228 1231  2411 17 14 66  3

 1  0 614008  37436   4916 1395708    0   20   124   400 1230  2309 17 15 69  0

 1  0 614008  36988   4916 1395844    0    0    88   232 1207  2240 17 14 68  1

 

2.       mpstat

 

05:03:04 PM  CPU   %user   %nice %system %iowait    %irq   %soft   %idle    intr/s

05:03:32 PM  all   21.45    0.00   16.96    0.50    0.00    0.50   60.60   1420.00

05:03:33 PM  all   18.34    0.00   14.32    1.01    0.00    0.25   66.08   1276.00

05:03:34 PM  all   20.20    0.00   16.71    2.99    0.00    0.50   59.60   1551.52

05:03:35 PM  all   19.30    0.00   16.04    0.75    0.00    0.25   63.66   1488.00

05:03:36 PM  all   20.00    0.00   15.00    0.75    0.25    0.50   63.50   1341.00

05:03:37 PM  all   24.06    0.00   20.30    3.01    0.00    0.50   52.13   1712.00

05:03:38 PM  all   18.50    0.00   15.25    0.50    0.00    0.50   65.25   1391.09

05:03:39 PM  all   19.95    0.00   15.21    1.00    0.00    0.50   63.34   1351.52

05:03:40 PM  all   23.75    0.00   18.75    3.75    0.25    0.50   53.00   1568.00

05:03:41 PM  all   17.75    0.00   13.75    1.00    0.00    0.25   67.25   1261.39

05:03:42 PM  all   19.80    0.00   15.04    0.50    0.00    0.50   64.16   1368.69

05:03:43 PM  all   30.00    0.00   19.75    1.00    0.00    0.50   48.75   1587.88

05:03:44 PM  all   22.00    0.00   17.00    0.75    0.00    0.50   59.75   1424.00

05:03:45 PM  all   19.80    0.00   16.04    0.75    0.00    0.50   62.91   1448.51

05:03:46 PM  all   16.21    0.00   12.47    4.49    0.25    0.50   66.08   1274.00

05:03:47 PM  all   18.30    0.00   14.04    0.75    0.00    0.25   66.67   1234.00

05:03:48 PM  all   16.00    0.00   13.50    0.25    0.00    0.50   69.75   1193.07

05:03:49 PM  all   15.25    0.00   13.50    2.25    0.00    0.25   68.75   1263.64

l       1/300毫秒

1vmstat

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

 9  0 615112  36516   4868 1376272    3    3   112    40   15    18  1  0 97  1

 6  0 615256  54148   4860 1369640   52   12   336   632 1452  3385 54 40  5  1

 7  0 615248  48116   4880 1370240    0    0   420  1156 1488  3392 48 34 17  1

 3  0 615348  69828   4856 1363800    0    0   204   952 1472  3457 55 42  3  0

 7  0 615348  56780   4856 1363936    0    0   160   496 1468  3282 54 41  5  0

 4  1 615344  55580   4856 1364204    8    0   156   736 1453  3185 46 33 21  0

 6  0 615344  54620   4856 1364680    0    0   304   740 1494  3360 56 42  2  0

 6  0 615344  47116   4872 1365072    0    0   252   992 1472  3316 56 42  1  0

 7  0 615340  51724   4876 1366092    0    0   248  1320 1486  3076 45 32 23  1

 8  0 615340  49724   4876 1366500    0    0   260   652 1451  3326 57 41  1  0

 7  0 615340  44556   4876 1366976    0    0   348   692 1470  3327 56 42  2  0

 6  0 615312  40068   4876 1367756   64    0   232  1056 1453  3240 43 33 24  1

 9  0 615312  42172   4892 1368284    0    0   352  1344 1515  3448 55 42  2  0

 9  0 615312  50684   4900 1368480    0    0   200   536 1441  3330 55 42  3  1

 7  0 615308  47236   4900 1369300    0    0   132  1100 1457  3025 43 32 26  0

 6  0 615308  47684   4900 1369708    0    0   212   704 1457  3387 57 41  2  0

 5  0 615308  50700   4904 1370044    0    0   332   596 1477  3343 55 42  3  0

 6  0 615304  40700   4924 1370708    0    0   224  1344 1460  3133 43 32 24  0

 5  0 615304  45720   4924 1370980    0    0   180   672 1471  3487 55 42  3  0

 7  0 615304  39420   4924 1371320    0    0   208   516 1433  3316 55 43  2  0

 6  0 615304  43452   4924 1372000    0    0   120   984 1464  3163 44 32 24  0

 8  0 615304  38932   4924 1372272    0    0   188   660 1444  3320 55 43  3  0

 7  0 615304  43468   4940 1372664    0    0   252  1072 1488  3365 58 41  1  0

 6  0 615304  37876   4944 1373408    0    0   200   884 1450  3257 46 33 21  0

 9  0 615304  41636   4948 1373540    0    0   168   588 1470  3312 57 42  1  0

 7  0 615296  37276   4948 1373952    4    0   200   672 1457  3369 56 42  2  0

 5  0 615296  45804   4948 1374768    0    0   364   964 1475  3301 42 32 26  0

 8  0 615292  48988   4968 1375092    0    0   200  1112 1486  3497 55 43  3  0

10  1 615328  26180   4936 1368464    0   12   172   552 1441  3269 55 42  3  0

 6  0 615324  41316   4936 1368844   32    0   180   776 1432  3168 45 33 21  0

 7  0 615324  49252   4936 1369116    0    0   120   664 1473  3276 56 41  2  0

 7  1 615324  37852   4936 1369524    0    0   272   616 1439  3284 55 42  2  0

2.mpstat

 

05:07:01 PM  CPU   %user   %nice %system %iowait    %irq   %soft   %idle    intr/s

05:07:02 PM  all   57.00    0.00   40.25    0.25    0.25    0.75    1.50   1411.76

05:07:03 PM  all   56.61    0.00   40.65    0.25    0.00    1.25    1.25   1489.90

05:07:04 PM  all   43.50    0.00   31.25    0.50    0.00    1.50   23.25   1453.00

05:07:05 PM  all   54.61    0.00   40.65    0.50    0.25    1.25    2.74   1477.23

05:07:06 PM  all   55.00    0.00   40.75    0.50    0.00    1.00    2.75   1438.61

05:07:07 PM  all   43.36    0.00   29.32    0.00    0.00    1.00   26.32   1498.98

05:07:08 PM  all   56.25    0.00   41.25    0.25    0.00    1.25    1.00   1413.86

05:07:09 PM  all   56.00    0.00   40.50    0.25    0.25    0.75    2.25   1477.00

05:07:10 PM  all   41.00    0.00   31.50    0.50    0.00    1.25   25.75   1463.00

05:07:11 PM  all   55.72    0.00   40.30    0.25    0.25    1.24    2.24   1485.86

05:07:12 PM  all   55.28    0.00   41.96    0.00    0.00    1.01    1.76   1416.67

05:07:13 PM  all   43.92    0.00   30.52    0.25    0.00    0.99   24.32   1481.82

05:07:14 PM  all   54.25    0.00   41.75    0.25    0.00    1.25    2.50   1418.63分析结果:

可以看到,在用数据库连接是调用频率对cpu性能的影响还是很明显的。这是可以直接预想到的。

事务量增加了3倍的情况下,空闲率从50%-60%降到了20%以下甚至1%-5%

 

 

4.4、场景四

使用批量写远端数据库的方式

4.3.1参数

l       开启线程数据=100

l       每个线程执行参数   总执行次数10000

l       1/300毫秒

l       写远端每次写1000条,连续执行。

4.3.2测试结果

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----

 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

 1  8 858672  28084   2412 988752 2346    0  5604  3188 2312  3400 12  3 46 39

 0  5 853836  23348   2488 992332 2880    0  3500  2140 2105  2607  8  2 59 31

 0  8 853028  24060   2532 990636  822    0  2048  3868 2401  3371 13  3 48 36

 0 10 852312  23484   2576 988900  830    0  5230  3658 2382  2667 13  4 46 38

 1  5 850660  25852   2624 984988 1330    0  2870  2518 2424  3228 14  3 44 39

 6  7 849576  26620   2596 983292  962    0  3092  2860 2691  3745 15  3 48 34

 1  6 848368  23924   2608 983332 1190    0  4636  2556 2526  3000 14  3 52 31

 8 10 846904  24380   2564 979044 1254    0  3076  3006 2503  3334 13  4 45 38

 0  7 845688  44948   2496 989808  822    0  6772  2072 2319  2884 11  3 49 36

 1  7 844436  96764   2548 1008080  984    0  7710  2084 2268  2504 11  5 43 40

 0  6 843224 157244   2616 1026568  950    0  8080  1964 2057  1931  8  4 54 34

 0  5 842060 237700   2644 1040312  734    0  5322  2048 1961  1623  6  4 62 28

 0  4 841052 236172   2832 1047800  916    0  3062  1568 1381   782  3  1 67 30

 1  3 839688 229708   2880 1053464 1124    0  1884  1958 1347   799  4  0 68 27

 1  3 838268 228948   2916 1058356 1306    0  2006  1580 1345   783  1  1 71 28

 0  4 836660 223060   2928 1062820 1626    0  2114  1504 1317   661  1  1 71 28

 0  4 835004 215836   2944 1068872 1432    0  1960  2194 1350   758  1  1 71 27

 0  4 833776 209564   3036 1074440  946    0  1938  1754 1352   818  2  1 70 28

 1  3 832816 204060   3076 1080568  762    0  1736  2130 1349   792  9  1 65 25

 0  4 831192 198556   3100 1085228 1224    0  1854  1580 1329   813  5  1 65 30

 

这次开的线程等于之前所有测试中最大的100个,而且每个线程写数据频率也是最大的1/300毫秒,批量写入远端。

可以看到cpu空闲率在40%-70%之间,对cpu性能的消耗减低了很多。

 

 

附件:

 

java代码

DBConnection  类:

 

package loadoracletest;

import java.sql.Connection;
import java.sql.DriverManager;

public class DBConnection {
 private final static String DB_URL = "jdbc:oracle:thin:@192.168.12.222:1521:EDU";

 private final static String DB_DRIVER = "oracle.jdbc.driver.OracleDriver";

 private final static String DB_USERNAME = "username";

 private final static String DB_PASSWORD = "password";

 public Connection getConnection() {
  Connection conn = null;
  try {
   /** 使用Class.forName()方法自动创建这个驱动程序的实例且自动调用DriverManager来注册它*/
   Class.forName(DB_DRIVER);
   /** 通过DriverManager的getConnection()方法获取数据库连接*/
   conn = DriverManager
     .getConnection(DB_URL, DB_USERNAME, DB_PASSWORD);
  } catch (Exception ex) {
   ex.printStackTrace();
  }
  return conn;

 }

 /**
  * 关闭数据库连接
  * 
  * @param connect
  */
 public void closeConnection(Connection conn) {
  try {
   if (conn != null) {
    /** 判断当前连接连接对象如果没有被关闭就调用关闭方法*/
    if (!conn.isClosed()) {
     conn.close();
    }
   }
  } catch (Exception ex) {
   ex.printStackTrace();
  }
 }

}

LoadTest 类 

package loadoracletest;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class LoadTest extends Thread {

 /**
  * 多线程负载测试
  *
  * @param args
  */
 int count = 1, number;

 Connection conn = null;

 public LoadTest(int num) {
  number = num;
  // System.out.println("创建线程 " + number);
  conn = new DBConnection().getConnection();
 }

 public void run() {

  while (count <= 10) {

   // System.out.println("线程 " + number + ":计数 " + count);

   db(conn);

   try {
    sleep(1000);
    System.out.println("sleep" + number);
   } catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    System.out.println("sleep3 exception");
   }
   ++count;
  }
  try {
   if (!conn.isClosed()) {
    conn.close();
    System.out.println("close" + number);
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }

 }

 public void closeConn() {
  try {
   if (!conn.isClosed())
    conn.close();
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }

 public void db(Connection connection) {
  Connection conn = null;
  // String sql = "select instance_name,status from v$instance";
  String sql = "{ call edu.PROC_SMS_WRITER_test(?,?,'00','1')}";
  PreparedStatement cst = null;
  try {
   conn = connection;
   cst = conn.prepareStatement(sql);
   cst.setString(1, "15981890979");
   cst.setString(2, number + "-" + count + "多线程调用proc_sms_writer");
   cst.execute();
   /*
    * ResultSet rs = st.executeQuery(sql); while (rs.next()) {
    * System.out.println(rs.getString(1));
    * System.out.println(rs.getString(2)); } rs.close(); st.close();
    */
   conn.commit();
   cst.close();
  } catch (Exception e) {
   // TODO: handle exception
   System.out.println(e.getMessage());
  } finally {
   try {
    if (conn.isClosed()) {
     conn.commit();
     conn.close();
    }
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
  }
 }

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  int j = 100;// 设定开启的线程数
  for (int i = 0; i < j; i++) {
   new LoadTest(i + 1).start();
   System.out.println(i);
  }
  System.out.println("over");

 }

}

你可能感兴趣的:(exception,数据库,String,测试,服务器,System)