{"id":2287,"date":"2019-09-24T16:08:31","date_gmt":"2019-09-24T09:08:31","guid":{"rendered":"https:\/\/tino.vn\/?post_type=ht_kb&#038;p=2287"},"modified":"2020-02-28T17:15:08","modified_gmt":"2020-02-28T10:15:08","slug":"cach-benchmark-disk-tren-linux","status":"publish","type":"ht_kb","link":"https:\/\/tino.vn\/blog\/docs\/cach-benchmark-disk-tren-linux\/","title":{"rendered":"C\u00e1ch benchmark disk tr\u00ean linux"},"content":{"rendered":"<h3 id=\"\"><iframe loading=\"lazy\" src=\"\/\/www.youtube.com\/embed\/oawepL-nefI\" width=\"560\" height=\"315\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/h3>\n<h3 id=\"Ki\u1ec3m_tra_t\u1ed1c_\u0111\u1ed9_\u0111\u1ecdc_ghi_I\/O\">Ki\u1ec3m tra t\u1ed1c \u0111\u1ed9 \u0111\u1ecdc ghi I\/O<\/h3>\n<p>T\u1ed1c \u0111\u1ed9 \u0111\u1ecdc, ghi I\/O c\u1ee7a hard disk \u1ea3nh h\u01b0\u1edfng l\u1edbn \u0111\u1ebfn hi\u1ec7u n\u0103ng c\u1ee7a m\u00e1y ch\u1ee7. T\u1ed1c \u0111\u1ed9 \u0111\u1ecdc v\u00e0 ghi d\u1eef li\u1ec7u c\u00e0ng cao, m\u00e1y ch\u1ee7 c\u1ee7a b\u1ea1n s\u1ebd ho\u1ea1t \u0111\u1ed9ng c\u00e0ng m\u01b0\u1ee3t m\u00e0. Gi\u1ed1ng nh\u01b0 m\u00e1y t\u00ednh c\u1ee7a b\u1ea1n n\u1ebfu thay \u1ed5 SSD \u0111\u1ecdc ghi t\u1ed1t h\u01a1n th\u00ec s\u1ebd kh\u1edfi \u0111\u1ed9ng nhanh h\u01a1n.<\/p>\n<p>\u0110\u1ec3\u00a0ki\u1ec3m tra t\u1ed1c \u0111\u1ed9 \u1ed5 c\u1ee9ng\u00a0hard Disk tr\u00ean Linux VPS\/Server ch\u00fang ta s\u1eed d\u1ee5ng\u00a0l\u1ec7nh dd:<\/p>\n<div class=\"EnlighterJSWrapper mochaEnlighterJSWrapper\">\n<pre><span class=\"\">dd if=\/dev\/zero of=test bs=64k count=16k conv=fdatasync &amp;&amp; rm -f test<\/span><\/pre>\n<\/div>\n<p>K\u1ebft qu\u1ea3 tr\u00ean 1 m\u00e1y ch\u1ee7 s\u1eed d\u1ee5ng \u1ed5 c\u1ee9ng c\u1ee7a m\u1ed9t VPS:<\/p>\n<pre>16384+0 records in\r\n16384+0 records out\r\n1073741824 bytes (1.1 GB) copied, 2.23 s, 481 MB\/s\r\nYou have new mail in \/var\/spool\/mail\/root<\/pre>\n<p>Th\u00f4ng th\u01b0\u1eddng:<\/p>\n<ul>\n<li>D\u01b0\u1edbi 50MB\/s t\u1ed1c \u0111\u1ed9 r\u1ea5t ch\u1eadm, kh\u00f4ng n\u00ean s\u1eed d\u1ee5ng \u0111\u1ec3 ch\u1ea1y c\u00e1c websever. Nh\u01b0ng c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng \u0111\u1ec3 test performance \u0111\u01b0\u1ee3c, v\u00ec n\u1ebfu ch\u1ea1y m\u01b0\u1ee3t \u1edf VPS y\u1ebfu th\u00ec \u0111\u00f3 l\u00e0 1 s\u1ea3n ph\u1ea9m t\u1ed1t.<\/li>\n<li>T\u1eeb 50MB\/s \u0111\u1ebfn 100MB\/s th\u00ec c\u00f3 th\u1ec3 ch\u1ea5p nh\u1eadn \u0111\u01b0\u1ee3c. \u0110\u00e2y c\u0169ng l\u00e0 t\u1ed1c \u0111\u1ed9 trung b\u00ecnh c\u1ee7a \u1ed5 c\u1ee9ng HDD truy\u1ec1n th\u1ed1ng<\/li>\n<li>Tr\u00ean 100MB\/s t\u1ed1c \u0111\u1ed9 n\u00e0y b\u1ea1n c\u00f3 th\u1ec3 y\u00ean t\u00e2m s\u1eed d\u1ee5ng.<\/li>\n<li>Tr\u00ean 200MB\/s t\u1ed1c \u0111\u1ed9 n\u00e0y l\u00fd t\u01b0\u1edfng khi s\u1eed d\u1ee5ng cho VPS ch\u1ea1y web.<\/li>\n<li>Tr\u00ean 1GB\/s th\u00ec qu\u00e1 tuy\u1ec7t v\u1edbi, n\u00f3 c\u00f3 th\u1ec3 \u0111ang s\u1eed d\u1ee5ng \u1ed5 c\u1ee9ng NVME SSD<\/li>\n<\/ul>\n<p><strong>Ch\u00fa \u00fd<\/strong>: N\u1ebfu l\u00e0 Dedicated Server th\u00ec khi ki\u1ec3m t\u1ed1c \u0111\u1ed9 \u1ed5 c\u1ee9ng th\u00ec t\u1ed1c \u0111\u1ed9 l\u00e0 t\u1ed1c \u0111\u1ed9 th\u1ef1c t\u1ebf c\u1ee7a \u1ed5 c\u1ee9ng \u0111\u00f3. C\u00f2n n\u1ebfu l\u00e0 VPS th\u00ec t\u1ed1c \u0111\u1ed9 \u1ed5 c\u1ee9ng khi ki\u1ec3m tra c\u00f3 th\u1ec3 kh\u00e1c nhau \u1edf m\u1ed9t s\u1ed1 th\u1eddi \u0111i\u1ec3m, v\u00ec vps \u0111\u01b0\u1ee3c chia ra t\u1eeb 1 m\u00e1y ch\u1ee7 n\u00ean s\u1ebd c\u00f3 nhi\u1ec1u ng\u01b0\u1eddi s\u1eed d\u1ee5ng chung n\u00ean t\u1ed1c \u0111\u1ed9 I\/O s\u1ebd c\u00f3 l\u00fac nhanh l\u00fac ch\u1eadm. Tuy nhi\u00ean n\u1ebfu b\u1ea1n l\u00e0 m\u1ed9t ng\u01b0\u1eddi thu\u00ea VPS, kh\u00f4ng n\u00ean d\u00f9ng VPS c\u00f3 t\u1ed1c \u0111\u1ed9 I\/O d\u01b0\u1edbi 200MB\/s.<\/p>\n<h3 id=\"\u0110o_l\u01b0\u1eddng_IOPS_b\u1eb1ng_Fio\">\u0110o l\u01b0\u1eddng IOPS b\u1eb1ng Fio<\/h3>\n<p>\u0110\u1ec3 ki\u1ec3m tra t\u1ed1c \u0111\u1ed9 IOPS ( Input\/Output operation per Second) tr\u00ean linux ta c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng c\u00f4ng c\u1ee5 Fio.<br \/>\nTr\u00ean centos b\u1ea1n c\u00f3 th\u1ec3 c\u00e0i \u0111\u1eb7t b\u1eb1ng l\u1ec7nh sau:<\/p>\n<pre>yum install -y epel-release &amp;&amp; yum install -y fio || ( apt-get update &amp;&amp; apt-get install -y fio )\r\n<\/pre>\n<p>Qu\u00e1 tr\u00ecnh test IOPS tr\u00ean VPS s\u1ebd ki\u1ec3m tra v\u1edbi c\u00e1c th\u00f4ng s\u1ed1 c\u1ee5 th\u1ec3 sau:<\/p>\n<ul>\n<li>T\u00e1c v\u1ee5 ng\u1eabu nhi\u00ean: Random write, random read v\u00e0 k\u1ebft h\u1ee3p c\u1ea3 hai. V\u00ed d\u1ee5, \u0111\u1ed1i v\u1edbi database, khi truy c\u1eadp h\u1ec7 th\u1ed1ng s\u1ebd \u0111\u1ecdc d\u1eef li\u1ec7u t\u1eeb m\u1ecdi n\u01a1i thu\u1ed9c \u1ed5 c\u1ee9ng, \u0111\u01b0\u1ee3c hi\u1ec3u l\u00e0 truy c\u1eadp ng\u1eabu nhi\u00ean(random read).<\/li>\n<li>Block size 4KB l\u00e0 con s\u1ed1 l\u00fd t\u01b0\u1edfng nh\u1ea5t \u0111\u1ed3ng th\u1eddi l\u00e0 blocksize th\u1ea5p nh\u1ea5t c\u1ee7a h\u1ec7 th\u1ed1ng. C\u1ee5 th\u1ec3, \u0111\u1ed1i v\u1edbi c\u00e1c h\u1ec7 th\u1ed1ng database, source code hay ph\u1ea7n l\u1edbn c\u00e1c h\u1ec7 th\u1ed1ng kh\u00e1c, l\u01b0\u1ee3ng d\u1eef li\u1ec7u truy xu\u1ea5t l\u00e0 r\u1ea5t nh\u1ecf nh\u01b0ng s\u1ed1 l\u1ea7n y\u00eau c\u1ea7u truy xu\u1ea5t l\u1ea1i r\u1ea5t nhi\u1ec1u. \u0110\u1ec3 c\u00f3 th\u1ec3 h\u00ecnh dung, m\u1ed7i l\u1ea7n user \u0111\u1ecdc 1 b\u00e0i vi\u1ebft tr\u00ean website c\u1ee7a b\u1ea1n l\u00e0 1 l\u1ea7n truy xu\u1ea5t (read) database v\u1edbi 1 l\u01b0\u1ee3ng d\u1eef li\u1ec7u r\u1ea5t nh\u1ecf, tuy v\u1eady s\u1ed1 l\u1ea7n \u0111\u1ecdc (g\u1ecdi) d\u1eef li\u1ec7u l\u1ea1i l\u00e0 r\u1ea5t nhi\u1ec1u.<\/li>\n<li>\u0110a nhi\u1ec7m: N\u1ebfu website c\u1ee7a b\u1ea1n c\u00f3 l\u01b0\u1ee3ng truy c\u1eadp cao th\u00ec c\u00f3 th\u1ec3 s\u1ebd ph\u1ea3i ph\u1ee5c v\u1ee5 t\u1ea5t c\u1ea3 c\u00f9ng m\u1ed9t l\u00fac. Ch\u00fang ta s\u1ebd \u0111o l\u01b0\u1eddng b\u1eb1ng c\u00e1ch m\u00f4 ph\u1ecfng nhi\u1ec1u truy c\u1eadp v\u00e0o \u1ed5 \u0111\u0129a c\u00f9ng l\u00fac.<\/li>\n<\/ul>\n<p>L\u1ec7nh ki\u1ec3m tra:<\/p>\n<p>T\u1ea1o 1 file 4GB, th\u1ef1c hi\u1ec7n vi\u1ec7c \u0111\u1ecdc\/ghi \u0111\u1ed3ng th\u1eddi v\u1edbi blocksize 4KB theo t\u1ec9 l\u1ec7 75% \u2013 25% (t\u1ee9c 3 \u0111\u1ecdc\/1 ghi) v\u00e0 th\u1ef1c hi\u1ec7n \u0111\u1ed3ng th\u1eddi 64 t\u00e1c v\u1ee5 m\u1ed9t l\u00fac. T\u1ec9 l\u1ec7 3:1 r\u1ea5t ph\u1ed5 bi\u1ebfn v\u00e0 x\u1ea5p x\u1ec9 v\u1edbi c\u00e1c d\u1ea1ng database hi\u1ec7n nay.<\/p>\n<pre>fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=tinohost --filename=tinohost --bs=4k --iodepth=64 --size=1G --readwrite=randrw --rwmixread=75 <span class=\"\">&amp;&amp; rm -f tinohost<\/span><\/pre>\n<p>K\u1ebft qu\u1ea3.<\/p>\n<pre>fio-3.1\r\nStarting 1 process\r\ntinohost: Laying out IO file (1 file \/ 4096MiB)\r\nJobs: 1 (f=1): [m(1)][100.0%][r=141MiB\/s,w=46.4MiB\/s][r=35.0k,w=11.9k IOPS][eta 00m:00s]\r\ntinohost: (groupid=0, jobs=1): err= 0: pid=13372: Tue Sep 24 08:31:00 2019\r\n  read: <span style=\"color: #ff0000;\">IOPS=32.3k<\/span>, BW=126MiB\/s (132MB\/s)(3070MiB\/24340msec)\r\n   bw (  KiB\/s): min=27296, max=166352, per=99.69%, avg=128751.04, stdev=28448.39, samples=48\r\n   iops        : min= 6824, max=41588, <span style=\"color: #ff0000;\">avg=32187.71<\/span>, stdev=7112.13, samples=48\r\n  write: <span style=\"color: #ff0000;\">IOPS=10.8k<\/span>, BW=42.2MiB\/s (44.2MB\/s)(1026MiB\/24340msec)\r\n   bw (  KiB\/s): min= 9216, max=56336, per=99.70%, avg=43032.50, stdev=9596.56, samples=48\r\n   iops        : min= 2304, max=14084, <span style=\"color: #ff0000;\">avg=10758.06<\/span>, stdev=2399.16, samples=48\r\n  cpu          : usr=10.86%, sys=20.68%, ctx=36849, majf=0, minf=22\r\n  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, &gt;=64=100.0%\r\n     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, &gt;=64=0.0%\r\n     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.1%, &gt;=64=0.0%\r\n     issued rwt: total=785920,262656,0, short=0,0,0, dropped=0,0,0\r\n     latency   : target=0, window=0, percentile=100.00%, depth=64\r\n\r\nRun status group 0 (all jobs):\r\n  READ: bw=126MiB\/s (132MB\/s), 126MiB\/s-126MiB\/s (132MB\/s-132MB\/s), io=3070MiB (3219MB), run=24340-24340msec\r\n  WRITE: bw=42.2MiB\/s (44.2MB\/s), 42.2MiB\/s-42.2MiB\/s (44.2MB\/s-44.2MB\/s), io=1026MiB (1076MB), run=24340-24340msec\r\n\r\nDisk stats (read\/write):\r\n  vda: ios=786432\/261676, merge=111\/444, ticks=966183\/278465, in_queue=1241796, util=91.72%<\/pre>\n<p>Nh\u01b0 v\u1eady th\u00ec trong m\u1ed9t gi\u00e2y th\u00ec VPS \u0111\u1ecdc \u0111\u01b0\u1ee3c trung b\u00ecnh 32.300 t\u00e1c v\u1ee5 v\u00e0 ghi \u0111\u01b0\u1ee3c trung b\u00ecnh 10.800 t\u00e1c v\u1ee5.<\/p>\n<p>&nbsp;<\/p>\n<h3 id=\"Ki\u1ec3m_tra_b\u1eb1ng_tool_tocdo.netz\">Ki\u1ec3m tra b\u1eb1ng tool tocdo.netz<\/h3>\n<p>\u0110\u01a1n gi\u1ea3n b\u1ea1n c\u0169ng c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng tool t\u1ea1i trang tocdo.net b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng l\u1ec7nh sau:<\/p>\n<p>&nbsp;<\/p>\n<pre>curl -Lso- tocdo.net | bash<\/pre>\n<p>K\u1ebft qu\u1ea3:<\/p>\n<p>System Info<br \/>\n&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br \/>\nCPU model : Virtual CPU 82d9ed4018dd<br \/>\nNumber of cores : 1<br \/>\nCPU frequency : 2600.000 MHz<br \/>\nTotal size of Disk : 55.0 GB (18.0 GB Used)<br \/>\nTotal amount of Mem : 1838 MB (1055 MB Used)<br \/>\nTotal amount of Swap : 4095 MB (339 MB Used)<br \/>\nSystem uptime : 24 days, 1 hour 28 min<br \/>\nLoad average : 1.42, 1.11, 0.64<br \/>\nOS : CentOS 7.6.1810<br \/>\nArch : x86_64 (64 Bit)<br \/>\nKernel : 3.10.0-957.21.3.el7.x86_64<br \/>\nVirt : kvm<br \/>\nDate : Tue Sep 24 08:49:52 UTC 2019<\/p>\n<p>Disk Speed<br \/>\n&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br \/>\ndd Test<br \/>\nI\/O (1st run) : 479 MB\/s<br \/>\nI\/O (2nd run) : 468 MB\/s<br \/>\nI\/O (3rd run) : 439 MB\/s<br \/>\nAverage : 462.0 MB\/s<br \/>\n&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br \/>\nFio Test<br \/>\nRead performance : 75.5MB\/s<br \/>\nRead IOPS : 18.4k<br \/>\nWrite performance : 25.3MB\/s<br \/>\nWrite IOPS : 6172<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ki\u1ec3m tra t\u1ed1c \u0111\u1ed9 \u0111\u1ecdc ghi I\/O T\u1ed1c \u0111\u1ed9 \u0111\u1ecdc, ghi I\/O c\u1ee7a hard disk \u1ea3nh h\u01b0\u1edfng l\u1edbn \u0111\u1ebfn hi\u1ec7u n\u0103ng c\u1ee7a m\u00e1y ch\u1ee7. T\u1ed1c \u0111\u1ed9 \u0111\u1ecdc v\u00e0 ghi d\u1eef li\u1ec7u c\u00e0ng cao, m\u00e1y ch\u1ee7 c\u1ee7a b\u1ea1n s\u1ebd ho\u1ea1t \u0111\u1ed9ng c\u00e0ng m\u01b0\u1ee3t m\u00e0. Gi\u1ed1ng nh\u01b0 m\u00e1y t\u00ednh c\u1ee7a b\u1ea1n n\u1ebfu thay \u1ed5 SSD \u0111\u1ecdc ghi [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":16424,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"tags":[],"ht_kb_category":[17],"class_list":["post-2287","ht_kb","type-ht_kb","status-publish","format-standard","has-post-thumbnail","hentry","ht_kb_category-huong-dan-ve-cloud-vps"],"_links":{"self":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/ht_kb\/2287","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/ht_kb"}],"about":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/comments?post=2287"}],"version-history":[{"count":0,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/ht_kb\/2287\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media\/16424"}],"wp:attachment":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media?parent=2287"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/tags?post=2287"},{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/ht_kb_category?post=2287"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}