BAB 2 LANDASAN TEORI. menyediakan layanan ke komputer lain melalui koneksi jaringan. Server dapat

dokumen-dokumen yang mirip
PERANCANGAN SERVER DENGAN MENGGUNAKAN LOAD BALANCER, FAILOVER, DAN DATABASE REPLICATION PADA PT. INDONESIA NEWS CENTER

Bab 2 Tinjauan Pustaka

REPLIKASI DATABASE DUA ARAH DENGAN KENDALI RASPBERRY PI PADA INTEGRASI SISTEM INFORMASI GEOGRAFIS PENYAKIT MENULAR

BAB II DASAR TEORI 2.1. Pengenalan Sistem Operasi Linux 2.2. Dasar Sistem Cluster

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Proposal Tugas Akhir

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL VI FAILOVER CLUSTER

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN BAB 1 PENDAHULUAN

BAB II TINJAUAN PUSTAKA. penghubung tersebut dapat berupa kabel atau nirkabel sehingga memungkinkan

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

Parallel Database. by: Ahmad Syauqi Ahsan

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Tabel 2.1 Tinjauan Pustaka

RANCANG BANGUN DATABASE DUA ARAH DENGAN KENDALI RASPBERRY PI PADA INTEGRASI SISTEM INFORMASI GEOGRAFIS PENYAKIT MENULAR

Bab 1. Pengenalan Sistem Terdistribusi

FAILOVER CLUSTER SERVER DAN TUNNELING EOIP UNTUK SISTEM DISASTER RECOVERY

SISTEM TERDISTRIBUSI. Agenda : - Pengantar Sistem Terdistribusi - Karakteristik Sistem Terdistribusi - Model Sistem Terdistribusi. Yuli Purwati, M.

ANALISIS AVAILABILITAS LOAD BALANCING PADA WEB SERVER LOKAL

Analisis Performa Load Balancing DNS Round Robin dengan Linux Virtual Server pada Webserver Lokal

Bab II Landasan Teori

IMPLEMENTASI EYE OS MENGGUNAKAN METODE LOAD BALANCING DAN FAILOVER PADA JARINGAN PRIVATE CLOUD COMPUTING DENGAN LAYANAN IAAS DAN SAAS

IMPLEMENTASI TEKNOLOGI LOAD BALANCER DENGAN WEB SERVER NGINX UNTUK MENGATASI BEBAN SERVER

Proses Burst Time Prioritas P P1 7 1 P2 9 3 P P4 19 2

UJI AVAILABILITAS LOAD BALANCING WEB SERVER MENGGUNAKAN LINUX VIRTUAL SERVER

Bab 4 Hasil dan Pembahasan

IMPLEMENTASI METODE LOAD BALANCING DALAM MENDUKUNG SISTEM KLUSTER SERVER

Sistem terdistribusi. Albertus dwi yoga widiantoro, M.Kom

SAHARI. Selasa, 29 September

BAB I PENDAHULUAN. Kemajuan dari teknologi Database Management System (DBMS) telah

Perancangan Dan Implementasi Load Balancing Dan Failover Clustering Pada Linux Virtual Server (LVS) Untuk High Availability

Bab 3 Metode Perancangan 3.1 Tahapan Penelitian

BAB II TINJAUAN PUSTAKA


Oracle Case Study HIGH AVAILABILITY. Oleh: Ahmad Syauqi Ahsan

Perancangan Mysql Cluster Menggunakan Mikrotik Rb750 Sebagai Node Database Management

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. tentang load balancing terus dilakukan dan metode load balancing terus

SHARE DATA & TRANSACTION

BAB II DASAR TEORI. Teknologi TCP/IP adalah hasil penelitian dan pengembangan protocol

PAPER MULTIPROCESSOR

Bab 2 Tinjauan Pustaka 2.1 Penelitian Sebelumnya

INFRASTRUKTUR WAREHOUSE KATEGORI INFRASTRUKTUR DW

BAB 2 TINJAUAN PUSTAKA. WLAN dengan teknologi Infra red (IR) dan Hewlett-packard (HP) menguji WLAN

NAMA : FERRY ANGGRIAWAN KUSUMA ( ) SHELLI RIPATI ( ) STMIK INDONESIA

BAB III ANALISA KEBUTUHAN DAN PERANCANGAN SISTEM

Sistem Jaringan Terdistribusi

SISTEM OPERASI TERDISTRIBUSI


TUGAS I SISTEM TERDISTRIBUSI

IMPLEMENTASI CLUSTERING DATABASE SERVER MENGGUNAKAN PGCLUSTER UNTUK OPTIMALISASI KINERJA SISTEM BASIS DATA

Konsep Pemrograman Internet (1)

9/6/2014. Dua komputer atau lebih dapat dikatakan terinterkoneksi apabila komputer-komputer tersebut dapat saling bertukar informasi.

PROPOSAL PENELITIAN TESIS KOMPARASI DISTRIBUTED CACHE DAN CENTRALIZED CACHE PADA WEB PROXY PARULIAN

Pengenalan Server Load Balancing

Pemahaman mengenai Model arsitektur SisTer Mengetahui Sudut pandang logis Arsitektur Sistem Tersebar. Memahami model Arsitektur sistem

Kelompok 1. Anggota : BOBBY KURNIAWAN NIA FITRIANA ARI FEBRYANSYAH DIAN ULUMIA ORIN HARITSA YASSER

BAB I PENDAHULUAN Latar Belakang

Peningkatan Kinerja Siakad Menggunakan Metode Load Balancing dan Fault Tolerance Di Jaringan Kampus Universitas Halu Oleo

BAB II DASAR TEORI Gambar 2.1. Cubieboard2

Model Sistem Terdistribusi

BAB I PENDAHULUAN. 1.1 Latar Belakang

MANAJEMEN JARINGAN GONEWAJE

TIPE JARINGAN KOMPUTER

Bab 4 Hasil dan Pembahasan

BAB 3: PROTOCOL. Introduction to Networks

BAB I PENDAHULUAN 1.1 LATAR BELAKANG MASALAH

Rancang Bangun Server Learning Management System (LMS) Berbasis Metode Load Balancing

BAB 4 PERANCANGAN SISTEM

STUDI KOMPARATIF TERHADAP ALTERNATIF TEKNOLOGI YANG DIGUNAKAN UNTUK MENJAMIN KEBERLANGSUNGAN JARINGAN KOMPUTER DI PERGURUAN TINGGI

BAB 3 LANDASAN TEORI

Organisasi SistemKomputer, Pelayanan Sistem Operasi. Ptputraastawa.wordpress.com

OPTIMALISASI CLUSTER SERVER LMS DAN IPTV DENGAN VARIASI ALGORITMA PENJADWALAN

Bab 3 Metode dan Perancangan Sistem

CLUSTER DATABASE. Clustering

Bab 1 Pendahuluan Mengapa perlu mengetahui kinerja sistem?

CONTOH PENDSTRIBUSIAN HARDWARE

BAB 4 PERANCANGAN DAN EVALUASI

PENGEMBANGAN SERVER SIAKAD UNIVERSITAS DEHASEN BENGKULU MENGGUNAKAN HIGH AVAILABILITY CLUSTERING DAN MYSQL DATABASE REPLICATION

Sistem Terdistribusi 2. Model arsitektur Terdistribusi

ANALISIS PERFORMANSI LOAD BALANCING DENGAN ALGORITMA ROUND ROBIN DAN LEAST CONNECTION PADA SEBUAH WEB SERVER ABSTRAK

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. 1.2 Rumusan Masalah

BAB 1 PENDAHULUAN 1.1. Latar Belakang

BAB II TEORI DASAR. Resource Reservation Protocol (RSVP) merupakan protokol pada layer

BAB 1 PENDAHULUAN UKDW

TEKNOLOGI KOMPUTER. Pendahuluan. Perangkat Keras Komputer

BAB I PENDAHULUAN 1.1. Latar Belakang

BAB III ANALISIS DAN PERANCANGAN 1.1 ANALISA KEBUTUHAN SISTEM

Gambar Notifikasi via

BAB 1 PENDAHULUAN 1.1 Latar Belakang

sebagai Virtual machine Monitor (VMM) atau hypervisor, menyediakan resource virtual untuk mesin-mesin virtual (virtual machines) sehingga setiap mesin

1. PENGENALAN SISTEM TERDISTRIBUSI

BAB 1 PENDAHULUAN Latar Belakang

Rekayasa Elektrika. Jurnal VOLUME 11 NOMOR 4 AGUSTUS Analisis Kinerja MySQL Cluster Menggunakan Metode Load Balancing

PERANCANGAN CLUSTERING UJIAN ONLINE STUDI KASUS BINA SARANA INFORMATIKA

M. Choirul Amri

TSI Perbankan PENDAHULUAN. AS/400 hal. A.1


Analisa Pemanfaatan Cluster Computing Pada Jaringan Thin Client Server

BAB II KONSEP DASAR VIDEO STREAMING SERVER. komputer. Komputer server didukung dengan spesifikasi hardware yang lebih

BAB I PENDAHULUAN 1.1 Latar Belakang

Management Server. Aditya Mahendra Saputra KA34

Transkripsi:

BAB 2 LANDASAN TEORI 2.1 Server Server (Sosinsky, 2009:108) adalah sebuah program perangkat lunak yang menyediakan layanan ke komputer lain melalui koneksi jaringan. Server dapat dijalankan pada sistem lokal atau pada sistem remote, tetapi perangkat lunak harus rutin menyediakan layanan ini untuk sistem lain atau setidaknya mampu memberikan layanan. 2.2 Web Server Mesin ini (Yadav, 2009:3) menyimpan dan mengambil data internet (dan intranet) untuk perusahaan. Beberapa dokumen, data, dan lain lain, berada pada web server. Web application menyediakan akses ke dokumen dan data lainnya. Klien "thin" biasanya menggunakan web browser untuk meminta dokumen dokumen tersebut. Server tersebut membagi dokumen dokumen di intranet, atau di internet (atau extranet). Protokol yang paling umum digunakan adalah HTTP (Hyper Text Transfer Protocol). 2.3 Database Server Data (Yadav, 2009:3) berada di server, dalam bentuk database SQL. Database server menyediakan akses ke data kepada klien, dalam menanggapi permintaan SQL. Database server membagi data yang berada dalam database melalui jaringan. Database server memiliki protokol yang lebih efisien daripada 6

7 file server. Database server menerima permintaan SQL dan memproses mereka dan hanya mengembalikan data yang diminta; sehingga klien tidak harus berurusan dengan data yang tidak relevan. 2.4 Cluster Beberapa mesin stand-alone (Deshpande dan Kamalapur, 2008:6-33) yang bekerja secara paralel dan terhubung melalui jaringan kecepatan tinggi membentuk cluster. Berikut klasifikasi cluster: 1. High Availability Cluster Dalam jenis cluster ini (Deshpande dan Kamalapur, 2008:6-34) beberapa redundant node diberikan. Ketika komponen sistem gagal, redundant node ini digunakan untuk menyediakan layanan. Dalam kasus kegagalan apapun, high availability clustering mendeteksi kesalahan dan restart aplikasi segera pada node baru. Pada high availability clustering, setiap node dalam cluster dipantau menggunakan koneksi private network. High availability cluster juga disebut sebagai failover cluster. Pada operasi normal, ada berbagai node dalam cluster terhubung oleh heartbeat private network. 2. Load Balancing Cluster Jenis cluster ini (Deshpande dan Kamalapur, 2008:6-35) digunakan untuk load balancing. Ketika beberapa permintaan datang ke node cluster, Cluster ini mendistribusikan mereka ke berbagai node. Distribusi ini dibuat sesuai dengan ketersediaan node. Setiap node

dalam cluster mampu menangani setiap permintaan. Dalam kasus permintaan gagal, permintaan itu dikirimkan ke node lain dalam sistem. 8 2.5 Load Balancing Load balancing (Membrey, Plugge dan Hows, 2012:109) merupakan kemampuan untuk mentransfer setiap bagian dari proses untuk permintaan sistem ke sistem independen lain yang akan menanganinya secara bersamaan. Load balancing membagi beban yang masuk ke satu server diantara sejumlah perangkat lain. Load balancing memiliki keuntungan mengurangi jumlah proses yang dilakukan oleh server penerima primer memungkinkan untuk menangani permintaan lebih banyak dan meningkatkan kinerja karena ada sedikit kompetisi untuk sumber daya dan ada lebih banyak perangkat memproses seluruh beban. Gambar 2.1 Load Balancing

9 Sebagai load balancer (Dix, 2010:148) menerima setiap permintaan, load balancer harus memutuskan proses (atau backend) yang harus menangani permintaan. Algoritma paling sederhana load balancer bisa mengimplementasikan mungkin untuk secara acak memilih backend yang diketahui, tetapi hasilnya akan tidak sangat seimbang. Beberapa backend mungkin menerima terlalu banyak permintaan sementara yang lain posisi diam. Untungnya, ada sejumlah strategi load balancing baik yang mudah digunakan, termasuk round-robin, least-connection dan URI-based load balancing. 2.5.1 Algoritma Load Balancing Terdapat beberapa macam algoritma untuk load balancing diantaranya: 1. Random Allocation Dalam Random allocation (Deshpande dan Kamalapur, 2008:B-4) permintaan HTTP ditugaskan ke server dengan memilih secara acak diantara sekelompok server. Dalam kasus seperti ini, salah satu server mungkin dapat ditugaskan permintaan yang banyak, sedangkan server lainnya menganggur atau diam. 2. Round Robin Sebuah load balancer (Dix, 2010:149) beroperasi menggunakan algoritma round-robin membuat internal counter dari backend yang terakhir digunakan, dan menggunakan pilihan berikutnya dari daftar berurutan dari semua backend

10 yang diketahui. Ketika setiap permintaan tiba, backend berikutnya dipilih, dan counter bertambah, perulangan kembali ke awal dari daftar apabila diperlukan. 3. Least Connection Dengan algoritma least connection (Dix, 2010:150), load balancer mencoba untuk menyalurkan permintaan berdasarkan pada jumlah beban saat ini. Counter sebuah koneksi backend akan bertambah sebagai permintaan yang dikirim dan berkurang setelah mereka menyelesaikannya. 4. URI-Based Load Balancing URI-based load balancer (Dix, 2010:151) dimana semua permintaan untuk setiap data dapat diteruskan ke backend (server) yang sama selagi masih tersedia, jika backend menjadi kelebihan beban, load balancer menyesuaikan dengan menyalurkan permintaan untuk backend yang masih tersedia. 2.5.2 Tipe Load Balancer Terdapat dua pilihan untuk digunakan ketika merancang load balancer. Pilihannya adalah menggunakan software load balancing atau hardware load balancing. 1. Software Load Balancing Load balancer yang biasanya paling sering digunakan adalah yang berbasis perangkat lunak (Deshpande dan Kamalapur, 2008:B-5). Sering kali terintegrasi dengan

11 perangkat lunak web server dan paket aplikasi perangkat lunak. Proses load balancing dipengaruhi oleh perangkat komputer yang digunakan. Perangkat keras yang dapat mempengaruhi performa metode ini adalah kartu jaringan (Network Interface Card) yang digunakan, besarnya RAM (Random Access Memory) pada perangkat, dan juga media penyimpanan. 2. Hardware Load Balancing Load balancer perangkat keras (Deshpande dan Kamalapur, 2008:B-5) dapat menyalurkan paket TCP/IP untuk berbagai server di dalam cluster. Jenis load balancer ini menyediakan topologi yang solid dan didukung dengan ketersediaan tinggi, tetapi tentu datang dengan harga yang jauh lebih mahal. 2.6 Failover Failover (McBee, 2008:456) sebenarnya adalah sebuah proses multi langkah. Jika salah satu node mengalami kegagalan hardware, sinyal heartbeat dari node gagal berhenti. Node yang masih bekerja mendeteksi ini karena tidak adanya heartbeat node lain. Heartbeat (Simmons dan Carstarphen, 2012:34) adalah pemeriksaan kesehatan dikirim antara node untuk menjamin ketersediaan setiap node. Dua atau lebih (Gibson, 2010:340) server yang dikonfigurasi bersamasama, dengan beberapa server yang ditunjuk sebagai node aktif dan yang lain ditunjuk sebagai node tidak aktif. Node aktif memberikan layanan kepada klien

dan node tidak aktif memantau node aktif. Jika node aktif gagal, node tidak aktif dapat mengambil alih dengan sedikit gangguan kepada klien. 12 Gambar 2.2 Failover Failback (McBee, 2008:457) adalah ketika layanan mendeteksi heartbeat dari node gagal sebelumnya telah pulih, failback dapat dimulai. Proses ini melalui step yang sama dengan failover, perbedaanya hanya kembalinya node gagal yang telah di failover menjadi sedia kala.

13 Gambar 2.3 Failback 2.7 Parallel Database Dalam arsitektur parallel database, (Ricardo, 2011:454) ada beberapa prosesor yang mengontrol beberapa unit disk yang berisi database. Database dapat dipartisi pada disk, atau mungkin direplikasi. Jika fault-tolerance adalah prioritas tinggi, sistem dapat diatur sehingga masing-masing komponen dapat berfungsi sebagai cadangan untuk komponen lain dari jenis yang sama, mengambil alih fungsi dari setiap komponen serupa yang gagal. Arsitektur sistem parallel database bisa shared-memory, shared-disk, shared-nothing, atau hierarchical. 1. Shared-memory Dalam sistem shared-memory, (Ricardo, 2011:454) semua prosesor memiliki akses ke memori yang sama dan berbagi disk. Database berada pada disk, baik di replikasi pada mereka atau di partisi

14 diantara mereka. Ketika prosesor membuat permintaan data, data dapat diambil dari salah satu disk ke memori buffer yang dimiliki oleh semua prosesor. Database management system menginformasikan prosesor apa halaman dalam memori berisi halaman data yang diminta. Gambar 2.4 Shared-memory 2. Shared-disk Dalam desain shared-disk, (Ricardo, 2011:454) masing-masing prosesor memiliki akses eksklusif ke memori sendiri, tetapi semua prosesor memiliki akses ke unit disk bersama. Ketika prosesor meminta data, halaman database dibawa ke memori prosesornya.

15 Gambar 2.5 Shared-disk 3. Shared-nothing Dalam sistem shared-nothing, (Ricardo, 2011:454) masing masing prosesor memiliki kontrol eksklusif unit disk-nya sendiri atau beberapa unit dan memorinya sendiri, namun prosesor bisa berkomunikasi dengan satu sama lain. Gambar 2.6 Shared-nothing

16 4. Hierarchical Dalam arsitektur hierarchical, (Ricardo, 2011:455) sistem terdiri dari node yang shared-memory, dihubungkan oleh jaringan interconnection. Sistem hanya berbagi komunikasi dengan satu sama lain, membuat secara keseluruhan arsitektur inter-system sharednothing. Gambar 2.7 Hierarchical Ada dua metrik penting (ITL Education Solutions Limited, 2010:387) untuk mengukur efisiensi dari suatu sistem parallel database, yaitu, scale-up dan

17 speed-up. Menjalankan tugas dalam sedikit waktu dengan meningkatkan derajat paralelisme disebut speed-up, dan penanganan tugas yang lebih besar dengan meningkatkan derajat paralelisme disebut scale-up. Parallel database (Ricardo, 2011:458) menggunakan arsitektur sharednothing memberikan speed-up linier, yang berarti sesuai jumlah penambahan prosesor dan disk, kecepatan operasi meningkat secara linier. Mereka juga menyediakan scale-up linier, yang berarti bahwa mereka terukur, sehingga jika banyak prosesor dan disk ditambahkan, tingkat kinerja tertopang. Hal ini memungkinkan untuk meningkatkan jumlah data yang disimpan dan diproses tanpa mengorbankan kinerja. Karakteristik shared-nothing ini telah manjadi arsitektur pilihan untuk web application. 2.8 Database Replication Replication (Bell, Kindahl dan Thalmann, 2010:5) digunakan untuk mereplikasi semua perubahan yang dibuat pada server disebut master server atau hanya master ke server lain, yang disebut slave server atau hanya slave. Hal ini biasanya digunakan untuk membuat salinan tepat dari server master, tetapi replikasi dapat digunakan untuk keperluan lain juga. Berikut adalah jenis dari replication: 1. Synchronous Replication Synchronous, (Greenwald, Stackowiak dan Stern, 2008:287) atau real-time, replikasi yang dapat digunakan bila tidak ada toleransi untuk perbedaan data atau data yang hilang. Data di site sekunder harus sesuai dengan site utama setiap saat dan mencerminkan semua

18 transaksi yang dilakukan. Setiap transaksi di site utama akan memicu pemanggilan prosedur di site sekunder untuk mereproduksi transaksi. 2. Asynchronous Replication Dengan asynchronous replication, (Greenwald, Stackowiak dan Stern, 2008:287) transaksi yang dilakukan di site utama dan beberapa waktu kemudian direplikasi ke site sekunder. Sampai antrian transaksi yang ditangguhkan "pushed" ke site sekunder, mereplikasi perubahan, data di sekunder akan berbeda dari data site utama. Jika database utama hilang tidak dapat ditarik kembali, transaksi unpushed yang ditangguhkan dalam antrian juga akan hilang. Gambar 2.8 Synchronous dan asynchronous replication