Server Requirement for Deploy and Running Apps

January 27, 2021 by

 1 Server banyak app bagus tidak ?
Tidak baik,
Misal 1 VM ada spek besar, CPU 12, RAM 20GB, HDD 500GB,
Jika dalam jangka panjang maka akan bnyak masalah, krn
1. Depend 1 VM misal pada shared hosting, maka otomatis semua aplikasi kita yg dishared hosting akan mati. Makan akan mati down secara bersamaan. bahaya bngt.
2. Rebutan resources
misal 1 VM dan ada 3 aplikasi dengan 3 DB, maka jika
tiap2 request per second atau request per hour atau day. Misal palikasi C meload semua database dan memproses generate report sampai waktu 2 jam. Tiap jam 10 malem - 12 malam aplikasi C, RAM dan cpu di habiskan oleh aplikasi C.
Misal 1 laptop dibuka adobe xd, photosop, kemudian kita render video maka laptop hang dan smeua aplikasi semua lemot / mati  
3. Rebutan Resource versi Database
Ketika buat aplikasi A,B,C
apakah ada performa query yg jelek atau tidak. Ketika aplikasi makin lama dna bnyak maka ada 1jt data dengan join 5 table maka membuat lemot. semakin tinggi data maka database makan CPU, dalam processing. Cek ke server aplikasi yg bnyak makan resources.

Rekomendasi :
1. Memakai VM bnyak kecil2, dan database juga dipisah.
ketika upgrade VM maka simple dan bisa partial, dan dalam rolling upgrade tidak ada yg mati semua servernya. Kecuali data center mati, maka smua aplikasi mati semua. Horizantal scalling dan buat VM baru, sehingga tidak mati semua. jika vertical scaling maka makin gede nanti mati semua, sehingga aplikasi bisa jalan dan tidak semua mati.
Problem : overheat sistem operasi dalam VM.
2. Container => docker, kubernetes (orchestrator)
Disarankan bisa setup docker swarm atau kubernetes, utk cluster container manager.
Maka akan diinstal container aplikasi A dengan configurasi 1 cpu dan RAM 1GB, buat aplikasi B 1 cpu dan RAM 2, database B dengan 1CPU dan RAM 1GB,
Solusi ini utk maintenance lebih enak tpi lebih ribet.

0 comments:

Post a Comment