VPS untuk ujian online


Mungkin bisa diperiksa dulu si di telusurin dulu. karena pastinya perlu optimasi. kalau untuk mengurangi proses tersebut bisa pakai layanan yang hosting semi dedicated / share hosting yang resource nya lebih gede jadi cukup tinggal pasang tak perlu banyak tweek
 
Pengalaman saya kemarin pakek aplikasi CBT , scripnya yang kurang di optimasi. penulisan ke mysqlnya memakan banyak resource. *saya pasang di shared hosting.

ngakalinnya di buat banyak subdomain dengan masing2 ada aplikasi CBT nya , ujian siswanya login per kelas..
 
coba cek pakai fio
Starting 1 process
test: Laying out IO file (1 file / 4096MiB)
Jobs: 1 (f=1): [m(1)][7.9%][r=77.6MiB/s,w=26.1MiB/s][r=19.9k,w=6679 IOPS][eta 00
Jobs: 1 (f=1): [m(1)][10.3%][r=78.1MiB/s,w=25.9MiB/s][r=20.0k,w=6621 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][12.8%][r=78.2MiB/s,w=26.0MiB/s][r=20.0k,w=6667 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][15.4%][r=78.1MiB/s,w=26.1MiB/s][r=20.0k,w=6678 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][17.9%][r=78.2MiB/s,w=25.9MiB/s][r=20.0k,w=6628 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][20.5%][r=78.1MiB/s,w=25.0MiB/s][r=20.0k,w=6648 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][23.1%][r=78.1MiB/s,w=26.2MiB/s][r=20.0k,w=6703 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][25.6%][r=78.2MiB/s,w=26.6MiB/s][r=20.0k,w=6822 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][26.2%][r=78.1MiB/s,w=26.2MiB/s][r=20.0k,w=6695 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][30.8%][r=78.1MiB/s,w=26.5MiB/s][r=20.0k,w=6796 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][33.3%][r=78.2MiB/s,w=26.2MiB/s][r=20.0k,w=6704 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][35.0%][r=78.1MiB/s,w=25.9MiB/s][r=20.0k,w=6629 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][37.5%][r=78.2MiB/s,w=26.4MiB/s][r=20.0k,w=6758 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][40.0%][r=78.2MiB/s,w=26.5MiB/s][r=20.0k,w=6779 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][42.5%][r=78.1MiB/s,w=25.9MiB/s][r=20.0k,w=6631 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][43.9%][r=78.2MiB/s,w=26.2MiB/s][r=20.0k,w=6695 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][47.5%][r=78.1MiB/s,w=26.6MiB/s][r=20.0k,w=6816 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][50.0%][r=78.1MiB/s,w=26.0MiB/s][r=20.0k,w=6658 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][52.5%][r=78.1MiB/s,w=26.9MiB/s][r=20.0k,w=6885 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][55.0%][r=78.1MiB/s,w=25.9MiB/s][r=20.0k,w=6619 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][57.5%][r=78.1MiB/s,w=26.4MiB/s][r=20.0k,w=6751 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][60.0%][r=78.1MiB/s,w=25.8MiB/s][r=20.0k,w=6614 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][62.5%][r=78.2MiB/s,w=25.8MiB/s][r=20.0k,w=6610 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][65.0%][r=78.1MiB/s,w=25.8MiB/s][r=20.0k,w=6595 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][67.5%][r=78.2MiB/s,w=25.0MiB/s][r=20.0k,w=6653 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][70.0%][r=78.1MiB/s,w=26.4MiB/s][r=20.0k,w=6762 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][72.5%][r=78.2MiB/s,w=26.5MiB/s][r=20.0k,w=6778 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][75.0%][r=78.1MiB/s,w=26.5MiB/s][r=20.0k,w=6781 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][77.5%][r=78.1MiB/s,w=26.1MiB/s][r=20.0k,w=6672 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][80.0%][r=78.2MiB/s,w=26.9MiB/s][r=20.0k,w=6877 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][82.5%][r=78.1MiB/s,w=25.9MiB/s][r=20.0k,w=6621 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][85.0%][r=78.2MiB/s,w=25.9MiB/s][r=20.0k,w=6624 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][87.5%][r=78.1MiB/s,w=25.5MiB/s][r=20.0k,w=6536 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][90.0%][r=78.2MiB/s,w=26.0MiB/s][r=20.0k,w=6659 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][92.5%][r=78.1MiB/s,w=25.9MiB/s][r=20.0k,w=6641 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][95.0%][r=78.2MiB/s,w=25.0MiB/s][r=20.0k,w=6653 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][97.5%][r=78.1MiB/s,w=25.5MiB/s][r=20.0k,w=6535 IOPS][eta 0
Jobs: 1 (f=1): [m(1)][100.0%][r=78.2MiB/s,w=25.8MiB/s][r=20.0k,w=6595 IOPS][eta 00m:00s]
test: (groupid=0, jobs=1): err= 0: pid=33049: Mon Feb 8 06:03:48 2021
read: IOPS=20.0k, BW=78.3MiB/s (82.1MB/s)(3070MiB/39204msec)
bw ( KiB/s): min=78928, max=95952, per=99.99%, avg=80175.88, stdev=1814.70, samples=78
iops : min=19732, max=23988, avg=20043.94, stdev=453.68, samples=78
write: IOPS=6699, BW=26.2MiB/s (27.4MB/s)(1026MiB/39204msec)
bw ( KiB/s): min=25256, max=32208, per=99.99%, avg=26795.88, stdev=834.09, samples=78
iops : min= 6314, max= 8052, avg=6698.92, stdev=208.53, samples=78
cpu : usr=7.85%, sys=30.51%, ctx=723998, majf=0, minf=26
IO depths : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=100.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.1%, >=64=0.0%
issued rwts: total=785920,262656,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=64

Run status group 0 (all jobs):
READ: bw=78.3MiB/s (82.1MB/s), 78.3MiB/s-78.3MiB/s (82.1MB/s-82.1MB/s), io=30 70MiB (3219MB), run=39204-39204msec
WRITE: bw=26.2MiB/s (27.4MB/s), 26.2MiB/s-26.2MiB/s (27.4MB/s-27.4MB/s), io=10 26MiB (1076MB), run=39204-39204msec

Disk stats (read/write):
sda: ios=782034/261562, merge=0/3, ticks=2462545/15132, in_queue=2477610, util =99.77%


ini tuan hasilnya, sy kurang tau cara bacanya.
 
Pengalaman saya kemarin pakek aplikasi CBT , scripnya yang kurang di optimasi. penulisan ke mysqlnya memakan banyak resource. *saya pasang di shared hosting.

ngakalinnya di buat banyak subdomain dengan masing2 ada aplikasi CBT nya , ujian siswanya login per kelas..
berarti databasenya dibagi tiap subdomain juga ya?
 
ini tuan hasilnya, sy kurang tau cara bacanya.
coba perkecil size-nya, cukup 1gb saja, tidak perlu sampai 4gb
Code:
fio --name=randrw --rw=randrw --direct=1 --ioengine=libaio --bs=64k --numjobs=1 --rwmixread=90 --size=1g --runtime=600 --group_reporting
 
coba perkecil size-nya, cukup 1gb saja, tidak perlu sampai 4gb
Code:
fio --name=randrw --rw=randrw --direct=1 --ioengine=libaio --bs=64k --numjobs=1 --rwmixread=90 --size=1g --runtime=600 --group_reporting
randrw: (g=0): rw=randrw, bs=(R) 64.0KiB-64.0KiB, (W) 64.0KiB-64.0KiB, (T) 64.0K
iB-64.0KiB, ioengine=libaio, iodepth=1
fio-3.7
Starting 1 process
randrw: Laying out IO file (1 file / 1024MiB)
Jobs: 1 (f=1): [m(1)][100.0%][r=150MiB/s,w=17.4MiB/s][r=2404,w=278 IOPS][eta 00m:00s]
randrw: (groupid=0, jobs=1): err= 0: pid=215762: Tue Feb 9 02:50:13 2021
read: IOPS=2398, BW=150MiB/s (157MB/s)(922MiB/6153msec)
slat (usec): min=13, max=165, avg=27.20, stdev= 7.20
clat (usec): min=199, max=5992, avg=357.98, stdev=123.99
lat (usec): min=251, max=6027, avg=386.36, stdev=124.27
clat percentiles (usec):
| 1.00th=[ 265], 5.00th=[ 281], 10.00th=[ 297], 20.00th=[ 314],
| 30.00th=[ 326], 40.00th=[ 334], 50.00th=[ 343], 60.00th=[ 355],
| 70.00th=[ 375], 80.00th=[ 396], 90.00th=[ 416], 95.00th=[ 433],
| 99.00th=[ 529], 99.50th=[ 742], 99.90th=[ 2245], 99.95th=[ 2638],
| 99.99th=[ 5473]
bw ( KiB/s): min=150656, max=157312, per=99.94%, avg=153408.00, stdev=1907.55, samples=12
iops : min= 2354, max= 2458, avg=2397.00, stdev=29.81, samples=12
write: IOPS=264, BW=16.5MiB/s (17.3MB/s)(102MiB/6153msec)
slat (usec): min=17, max=3804, avg=34.75, stdev=93.83
clat (usec): min=115, max=1230, avg=182.52, stdev=58.93
lat (usec): min=138, max=4028, avg=218.46, stdev=112.30
clat percentiles (usec):
| 1.00th=[ 133], 5.00th=[ 141], 10.00th=[ 147], 20.00th=[ 155],
| 30.00th=[ 163], 40.00th=[ 167], 50.00th=[ 176], 60.00th=[ 182],
| 70.00th=[ 188], 80.00th=[ 200], 90.00th=[ 217], 95.00th=[ 237],
| 99.00th=[ 351], 99.50th=[ 510], 99.90th=[ 1074], 99.95th=[ 1237],
| 99.99th=[ 1237]
bw ( KiB/s): min=14976, max=19328, per=99.97%, avg=16917.33, stdev=1412.58, samples=12
iops : min= 234, max= 302, avg=264.33, stdev=22.07, samples=12
lat (usec) : 250=9.72%, 500=89.07%, 750=0.74%, 1000=0.14%
lat (msec) : 2=0.21%, 4=0.10%, 10=0.02%
cpu : usr=3.07%, sys=10.39%, ctx=16401, majf=1, minf=30
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
issued rwts: total=14757,1627,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=1

Run status group 0 (all jobs):
READ: bw=150MiB/s (157MB/s), 150MiB/s-150MiB/s (157MB/s-157MB/s), io=922MiB (967MB), run=6153-6153msec
WRITE: bw=16.5MiB/s (17.3MB/s), 16.5MiB/s-16.5MiB/s (17.3MB/s-17.3MB/s), io=102MiB (107MB), run=6153-6153msec

Disk stats (read/write):
sda: ios=15355/1635, merge=0/0, ticks=5415/308, in_queue=5709, util=89.66%
 
coba perkecil size-nya, cukup 1gb saja, tidak perlu sampai 4gb
Code:
fio --name=randrw --rw=randrw --direct=1 --ioengine=libaio --bs=64k --numjobs=1 --rwmixread=90 --size=1g --runtime=600 --group_reporting

ini yg VPS Contabo :

randrw: (g=0): rw=randrw, bs=(R) 64.0KiB-64.0KiB, (W) 64.0KiB-64.0KiB, (T) 64.0K iB-64.0KiB, ioengine=libaio, iodepth=1
fio-3.7
Starting 1 process
randrw: Laying out IO file (1 file / 1024MiB)
Jobs: 1 (f=1): [m(1)][75.0%][r=250MiB/s,w=27.6MiB/s][r=4002,w=441 IOPS][eta 00m: Jobs: 1 (f=1): [m(1)][100.0%][r=261MiB/s,w=27.4MiB/s][r=4172,w=438 IOPS][eta 00m :00s]
randrw: (groupid=0, jobs=1): err= 0: pid=808598: Mon Feb 8 20:58:46 2021
read: IOPS=4232, BW=265MiB/s (277MB/s)(922MiB/3487msec)
slat (usec): min=8, max=1291, avg=20.42, stdev=26.98
clat (nsec): min=1550, max=37171k, avg=185061.96, stdev=762311.09
lat (usec): min=50, max=37224, avg=206.00, stdev=763.85
clat percentiles (usec):
| 1.00th=[ 57], 5.00th=[ 72], 10.00th=[ 80], 20.00th=[ 92],
| 30.00th=[ 102], 40.00th=[ 112], 50.00th=[ 121], 60.00th=[ 133],
| 70.00th=[ 147], 80.00th=[ 167], 90.00th=[ 225], 95.00th=[ 338],
| 99.00th=[ 988], 99.50th=[ 1909], 99.90th=[ 9372], 99.95th=[15664],
| 99.99th=[35390]
bw ( KiB/s): min=232192, max=310016, per=97.72%, avg=264684.00, stdev=27889. 57, samples=6
iops : min= 3628, max= 4844, avg=4135.67, stdev=435.79, samples=6
write: IOPS=466, BW=29.2MiB/s (30.6MB/s)(102MiB/3487msec)
slat (usec): min=10, max=378, avg=28.47, stdev=17.03
clat (usec): min=59, max=21364, avg=215.48, stdev=656.82
lat (usec): min=77, max=21438, avg=244.45, stdev=658.94
clat percentiles (usec):
| 1.00th=[ 75], 5.00th=[ 92], 10.00th=[ 102], 20.00th=[ 116],
| 30.00th=[ 129], 40.00th=[ 139], 50.00th=[ 149], 60.00th=[ 161],
| 70.00th=[ 176], 80.00th=[ 196], 90.00th=[ 265], 95.00th=[ 379],
| 99.00th=[ 1123], 99.50th=[ 3392], 99.90th=[10814], 99.95th=[21365],
| 99.99th=[21365]
bw ( KiB/s): min=26826, max=33408, per=96.77%, avg=28897.67, stdev=2363.21, samples=6
iops : min= 419, max= 522, avg=451.50, stdev=36.95, samples=6
lat (usec) : 2=0.02%, 4=0.03%, 50=0.24%, 100=26.06%, 250=65.09%
lat (usec) : 500=6.16%, 750=0.94%, 1000=0.43%
lat (msec) : 2=0.52%, 4=0.24%, 10=0.16%, 20=0.05%, 50=0.04%
cpu : usr=3.61%, sys=12.59%, ctx=16449, majf=0, minf=13
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
issued rwts: total=14757,1627,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=1

Run status group 0 (all jobs):
READ: bw=265MiB/s (277MB/s), 265MiB/s-265MiB/s (277MB/s-277MB/s), io=922MiB ( 967MB), run=3487-3487msec
WRITE: bw=29.2MiB/s (30.6MB/s), 29.2MiB/s-29.2MiB/s (30.6MB/s-30.6MB/s), io=102MiB (107MB), run=3487-3487msec

Disk stats (read/write):
sda: ios=13639/1516, merge=0/12, ticks=2590/335, in_queue=622, util=81.21%
 
read: IOPS=2398, BW=150MiB/s (157MB/s)(922MiB/6153msec)
write: IOPS=264, BW=16.5MiB/s (17.3MB/s)(102MiB/6153msec)
read: IOPS=4232, BW=265MiB/s (277MB/s)(922MiB/3487msec)
write: IOPS=466, BW=29.2MiB/s (30.6MB/s)(102MiB/3487msec)
throughput dan iops-nya lebih besar contabo
jika perlu aplikasi yg banyak baca-tulis, gunakan yg iops besar
tapi pertimbangkan juga latency network terkait jarak dari server ke pengguna

sebagai pembanding, ini salah satu vps yg kami gunakan untuk keperluan erp
tidak se-intens ujian online, tapi saat jam kerja lumayan rame untuk entry data
lokasi sgp, 2 vcore 2gb ram 30+20gb ssd
load rata2 kisaran 1,8-2,3 di jam sibuk
Code:
[root@sin21-ibnrushd ~]# fio --name=randrw --rw=randrw --direct=1 --ioengine=libaio --bs=64k --numjobs=1 --rwmixread=90 --size=4g --runtime=600 --group_reporting
randrw: (g=0): rw=randrw, bs=(R) 64.0KiB-64.0KiB, (W) 64.0KiB-64.0KiB, (T) 64.0KiB-64.0KiB, ioengine=libaio, iodepth=1
fio-3.7
Starting 1 process
randrw: Laying out IO file (1 file / 4096MiB)
Jobs: 1 (f=1): [m(1)][100.0%][r=267MiB/s,w=28.5MiB/s][r=4274,w=456 IOPS][eta 00m:00s]
randrw: (groupid=0, jobs=1): err= 0: pid=6716: Mon Feb  8 21:17:39 2021
   read: IOPS=4163, BW=260MiB/s (273MB/s)(3685MiB/14160msec)
    slat (usec): min=5, max=238, avg= 8.98, stdev= 4.52
    clat (usec): min=94, max=10979, avg=189.57, stdev=127.58
     lat (usec): min=106, max=11002, avg=198.85, stdev=127.99
    clat percentiles (usec):
     |  1.00th=[  127],  5.00th=[  159], 10.00th=[  163], 20.00th=[  167],
     | 30.00th=[  172], 40.00th=[  176], 50.00th=[  180], 60.00th=[  184],
     | 70.00th=[  190], 80.00th=[  200], 90.00th=[  217], 95.00th=[  233],
     | 99.00th=[  351], 99.50th=[  404], 99.90th=[ 1352], 99.95th=[ 2868],
     | 99.99th=[ 5997]
   bw (  KiB/s): min=225792, max=292608, per=99.94%, avg=266308.46, stdev=22547.12, samples=28
   iops        : min= 3528, max= 4572, avg=4161.04, stdev=352.31, samples=28
  write: IOPS=464, BW=29.0MiB/s (30.5MB/s)(411MiB/14160msec)
    slat (usec): min=5, max=228, avg=11.97, stdev= 5.53
    clat (usec): min=166, max=4542, avg=344.29, stdev=103.97
     lat (usec): min=180, max=4554, avg=356.55, stdev=104.33
    clat percentiles (usec):
     |  1.00th=[  217],  5.00th=[  273], 10.00th=[  289], 20.00th=[  314],
     | 30.00th=[  322], 40.00th=[  330], 50.00th=[  334], 60.00th=[  343],
     | 70.00th=[  351], 80.00th=[  363], 90.00th=[  383], 95.00th=[  433],
     | 99.00th=[  594], 99.50th=[  693], 99.90th=[ 1713], 99.95th=[ 2024],
     | 99.99th=[ 4555]
   bw (  KiB/s): min=24320, max=34176, per=99.77%, avg=29671.00, stdev=2948.76, samples=28
   iops        : min=  380, max=  534, avg=463.61, stdev=46.07, samples=28
  lat (usec)   : 100=0.01%, 250=87.58%, 500=11.88%, 750=0.33%, 1000=0.07%
  lat (msec)   : 2=0.06%, 4=0.05%, 10=0.02%, 20=0.01%
  cpu          : usr=1.12%, sys=5.81%, ctx=65540, majf=0, minf=32
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued rwts: total=58956,6580,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0, window=0, percentile=100.00%, depth=1

Run status group 0 (all jobs):
   READ: bw=260MiB/s (273MB/s), 260MiB/s-260MiB/s (273MB/s-273MB/s), io=3685MiB (3864MB), run=14160-14160msec
  WRITE: bw=29.0MiB/s (30.5MB/s), 29.0MiB/s-29.0MiB/s (30.5MB/s-30.5MB/s), io=411MiB (431MB), run=14160-14160msec
read: IOPS=4163, BW=260MiB/s (273MB/s)(3685MiB/14160msec)
write: IOPS=464, BW=29.0MiB/s (30.5MB/s)(411MiB/14160msec)
 
Menurut saya mending query SQL nya dioptimasi dulu, misal query yg resource nya makan banyak perlu diindex kemudian diexplain hasilnya seperti apa dan jgn lupa pakai loader.io untuk tes networknya
 
Back
Top