Computer Fundamentals
Bagaimana Computer Menyala
-
Power Button
-
Firmware Start
Firmware mulai bekerja, BIOS/UEFI (Unified Extensible Firmware Interface).
-
Power-On Self Test
UEFI akan melakuan self-test. Memeriksa apakah semua hardware yang dibutuhkan sudah ada, configured & berfungsi.
-
Pilih Boot Device
Memilih & mencari lokasi Boot yang akan digunakan. Terkadang ada lebih dari 1 OS dalam 1 PC. Di sini UEFI memilih berdasarkan urutan prioritas yang ditetapkan.
-
Initiate Bootloader
Setelah tau apa & dimana OS yang akan dijalankan, Bootloader memindahkan OS ke RAM untuk dijalankan.
Client Server
Analogikan keluarga kita meminta kita beli Spicy Beef Cheese Burger & Kola dari sebuah resto bernama Burger Keluarga.
Kita mencari alamat lokasi terdekat dari resto tesebut di daftar alamat/peta.
Kita sampai di resto, karena kita ingin takeaway, maka kita masuk ke jalur/pintu takeaway.
Sampai pada meja order, kita memesan sesuai dengan instruksi/order keluarga kita.
Pelayan menerima pesanan, memprosesnya, dan memberikan pada kita.
Selanjutnya kita menerima, pulang dan menyerahkan pesanan.
Maka, keluarga kita berperan sebagai user,
meminta kita sebagai browser(client) ke resto Burger Keluarga www.burgerkeluarga.com untuk membeli akses landing page.
Karena browser tidak tau alamatnya dimana, kita mencari di alamat ip web tersebut ke DNS (Domain Name Server).
Sesampainya di sana, karena kita masuk pintu port tertentu,
dan memesan.
Ingat bahwa kita harus memesan sesau bahasa protocol pelayanan meraka, mungkin bahasa indonesia, jerman, jepang?
Ingat bahwa resto hanya melayani pesanan sesuai menu.
Setelah jadi kita dapat pesanan, kembali & menyajikan pada keluarga kita.
HTTP ~ Hypertext Transfer Protocol
Merupakan Stateless client-server protocol yang digunakan World Wide Web. Yang berarti, setiap request diproses secara independet, tanpa ada kaitannya dengan request sebelum/setelahnya.
Meski demikian, kadang web application menggunakan cookie atau yang lainnya untuk menerapkan Statefulness.
Ambil contoh login state.
Virtualization
Katakanlah setiap resto punya 1 gedung. Tapi tanah kan terbatas, selanjutnya waktu, resource untuk membuat resto baru jadi mahal & lama.
Alih-alih membuat seluas tanah untuk 1 toko. Kita bisa buat 1 Gedung Mall, kita kategorikan setiap lantai, seperti lantai 1 khusus makanan, lantai 2 play ground, dll. selanjutnya dari setiap lantai kita bisa menyewakan tiap ruang untuk restoran/tenant, jadi 1 lantai bisa untuk lebih dari 1 tenant, dalam hal ini resto.
Ini yang kita sebut virtualization.
Alih-alih 1 server untuk satu layanan, Kita bisa pecah dengan 1 server menjadi beberapa Virtual Machine dengan Hypervisor.
Selanjutnya masing-masing Virtual Machine kita bisa bagi lagi menjadi beberapa Container lagi.
Ini untuk menyelesaikan
- High cost
- Low utilization ~ karena 1 layanan kan tidak menggunakan 100% resource server
- Slow deployment
- Hard to scale