Perancangan Klaster Sistem Penguji Kode Program Menggunakan Docker
Kata Kunci:
docker, evaluasi, pengujian, kode program, RPC, klasterAbstrak
Sistem evaluasi kode program otomatis merupakan sistem untuk menguji kebenaran program yang sering dipakai, bahkan penelitian tentan sistem ini sudah ada sejak tahun 1965. Seiring berkembangnya teknologi, maka semakin banyak yang menggunakan Docker untuk membuat sistem ini. Dengan menggunakan Docker, sistem akan terisolasi sehingga tidak ada masalah pada keamanan komputer. Karena itulah sistem evaluasi otomatis pada penelitian ini menggunakan Docker untuk mengamankan komputer. Meskipun sudah dapat mengevaluasi program dengan aman, tetapi masih ada masalah pada sistem ini. Masalah tersebut adalah bagaimana agar proses evaluasi menjadi efisien dan tidak terlalu membebani komputer serta bagaimana mempercepat proses evaluasi jika ada program yang membutuhkan waktu yang lama untuk dievaluasi. Karena itu pada penelitian ini dibuatlah klaster sistem penguji kode program menggunakan docker. Pada klaster ini terdapat master yang membagi tugas dan slave yang menjalankan evaluasi. Master dan slave akan dihubungkan dengan RPC karena master hanya akan memanggil fungsi pada slave. Proses pembagian tugas akan menggunakan algoritme round-robin, dimana slave akan dipilih secara bergantian. Berdasarkan hasil pengujian didapatkan bahwa klaster mampu berjalan dan mampu melakukan sampai dengan 104 pengujian sekaligus. Selain itu klaster ini juga dapat membagi tugas dengan efisien sehingga mengurangi beban pada komputer dan mempercepat jalannya evaluasi jika program membutuhkan waktu yang lama untuk dievaluasi