bab ii tinjauan pustaka - sinta.unud.ac.id 2.pdf1 bab ii tinjauan pustaka 2.1. tinjauan studi pada...
Post on 28-Aug-2019
225 Views
Preview:
TRANSCRIPT
1
BAB II
TINJAUAN PUSTAKA
2.1. Tinjauan Studi
Pada tinjauan studi akan dijelaskan mengenai beberapa jurnal penelitian yang
membahasi penelitian terdahulu tentang implementasi Cloud Computing. Berikut
ini adalah daftar jurnal penelitian tersebut :
Tabel 2.1. Tinjauan Studi Terkait
No Judul Tahun Penulis Metode Hasil
1. Membangun Sistem
Cloud Computing
Dengan Implementasi
Load Balancing Dan
Pengujian Algoritma
Penjadwalan Linux
Virtual Server Pada Ftp
Server
2013
Yoppi Lisyadi
Oktavianus
Eksperimental Sistem Cloud Computing memiliki
peformansi yang lebih baik dari
server tunggal konvensional.
Sistem Load Balancing pada Cloud
Computing dapat menambah
kehandalan sistem karena dapat
menggabungkan banyak server yang
diakses oleh client
2. Analisis Beberapa
Algoritma Load
Balancing
2011 Helmi Kurniawan,
Reza Pulungan
Pengamatan
dan Analisis
Load Balancing algoritma bekerja
pada prinsip bahwa situasi di mana
beban kerja diberikan, selama waktu
kompilasi atau pada runtime.
Perbandingan di atas menunjukkan
bahwa algoritma beban statis
balancing lebih stabil dibandingkan
dengan dinamis dan juga kemudahan
untuk memprediksi perilaku statis,
tetapi pada saat yang sama algoritma
terdistribusi yang dinamis selalu
dianggap lebih baik daripada
algoritma statis.
2
3. Analisis Kinerja Load
Balancer dan
Implementasi pada
Layanan Web
2013 Yogi Kurniawan,
Sabriansyah R. A.,
ST., M.Eng. Eko
Sakti P., S.Kom.,
M.Kom.
Eksperimental Dari hasil pengujian server dengan
spesifikasi yang berbeda penggunaan
algortima weighted least connection
menghasilkan throughput dan
response time yang setara dengan
algoritma least connection. Akan
tetapi pada algoritma weighted least
connection pembagian beban kepada
web server lebih merata, karena selain
weight yang diberikan sesuai dengan
kemampuan server, weighted least
connection juga berdasarkan jumlah
koneksi pada tiap server.
2.2. Pengertian Virtualisasi
Virtualization / virtualisasi merupakan sebuah teknik yang berfungsi untuk
menciptakan / membuat sesuatu dalam bentuk maya dari sesuatu yang berbentuk
nyata. Virtualisasi dapat membuat sesuatu yang ada menjadi berlipat ganda,
seperti contohnya dalam virtualisasi user dapat membuat sebuah computer di
dalam sebuah computer, jadi dalam 1 komputer dapat dibuat lebih dari 1 sistem
computer dengan spesifikasi yang berbeda-beda.
Virtual Machine (VM) adalah sebuah mesin yang mempunyai dasar logika
yang menggunakan pendekatan lapisan-lapisan (layers) dari sistem komputer.
Sehingga sistem komputer dengan tersendiri dibangun atas lapisan-lapisan
tersebut, dengan urutan lapisannya mulai dari lapisan terendah sampai lapisan
teratas adalah sebagai berikut:
Perangkat keras (semua bagian fisik komputer)
Kernel (program untuk mengontrol disk dan sistem file, multi-tasking,
load-balancing, networking dan security)
Sistem program (program yang membantu general user)
3
Kernel yang berada pada lapisan kedua ini, menggunakan instruksi
perangkat keras untuk menciptakan seperangkat system call yang dapat digunakan
oleh komponen-komponen pada level sistem program. Sistem program kemudian
dapat menggunakan system call dan perangkat keras lainnya seolah-olah pada
level yang sama. Meskipun sistem program berada di level tertinggi , namun
program aplikasi bisa melihat segala sesuatu pada tingkatan dibawahnya seakan-
akan mereka adalah bagian dari mesin. Pendekatan dengan lapisan-lapisan inilah
yang kemudian menjadi kesimpulan logis pada konsep Virtual Machine (VM).
Berikut adalah beberapa jenis dari pendekatan dari Virtualisasi.
a) Full Virtualization
Sistem operasi yang berjalan pada mesin virtual memberikan instruksi
kepada perangkat keras dengan cara melalui mesin virtual. Full Virtualization
memberikan pemodelan lengkap dari perangkat keras. Jadi Full Virtualization
dapat membuat para user percaya bahwa terdapat system operasi berbeda pada
suatu computer. Berikut adalah gambaran dari Full Virtualization.
Gambar 2.1. Skema Full Virtualisasi (Sumber : Anonym, 2011)
b) Para Virtualization
Para Virtualization adalah sebuah teknik yang mana kumpulan instruksi dari
perangkat keras (yang tidak mendukung virtualisasi) dimodifikasi menjadi sebuah
4
kumpulan instruksi yang dapat divirtualisasi secara penuh. Memodifikasi
kumpulan instruksi perangkat keras, berarti sistem operasi juga butuh untuk
diarahkan ke kumpulan instruksi baru. Mesin virtual tidak mensimulasikan sistem
operasi secara menyeluruh, tetapi menawarkan API yang membutuhkan
modifikasi sistem operasi (merupakan teknik yang digunakan oleh XEN).
Gambar 2.2. Skema Para Virtualization (Sumber : Anonym 2011)
c) Hardware-Assisted Virtualization
Hardware-Assisted Virtualization mengacu pada penambahan perangkat
keras pada arsitektur sistem untuk mengurangi banyak pengeluaran hypervisor
sehubungan dengan memerangkap dan mengemulasi operasi I/O dan instruksi
status yang dijalankan dalam sebuah sistem operasi tamu. William menyebutkan
pada bukunya yang berjudul Virtualization with Xen, prosesor Hardware-assist
memberikan SO tamu otoritas yang dibutuhkan untuk mendapatkan akses
langsung ke sumberdaya tanpa harus membagi kendali dari perangkat keras.
Sebelumnya, VMM harus mengemulasi perangkat lunak untuk SO tamu saat
mengendalikan platform fisik. Prosesor baru tersebut memberikan VMM dan SO
tamu otoritas yang dibutuhkan tanpa emulasi perangkat keras dan perubahan SO.
2.2. Cloud Computing
Cloud Computing adalah sebuah model komputasi yang terkonfigurasi,
dimana sumber daya seperti Processor/computing power, storage, network, dan
software menjadi abstrak (virtual) serta diberikan sebagai layanan di jaringan /
internet menggunakan pola akses remote.
5
NIST (National Institute of Standarts and Technology) sebagai badan
nasional standard an teknologi amerika serikat memberikan definisi Cloud
Computing yaitu suatu model untuk memberikan kanyamanan, on-demand akses
jaringan untuk memanfaatkan bersama suatu sumber daya komputasi yang
terkonfigurasi (misalnya jaringan, server, penyimpanan, aplikasi dan layanan)
yang dapat secara cepat diberikan dan dirilis dengan upaya manajemen yang
minimal atau interaksi penyedia layanan.
Berdasarkan jenis layanan-nya, Cloud Computing dibagi menjadi berikut
ini:
Software as a Service (SaaS)
Platform as a Service (PaaS)
Infrastructure as a Service (IaaS)
Dibawah ini kita bahas, masing-masing jenis layanan diatas:
Software as a Service (SaaS) adalah layanan dari Cloud Computing
dimana kita tinggal memakai software (perangkat lunak) yang telah disediakan.
Kita cukup tahu bahwa perangkat lunak bisa berjalan dan bisa digunakan dengan
baik. Contoh: layanan email publik (Gmail, YahooMail, Hotmail, dsb), social
network (Facebook, Twitter, dsb) instant messaging (YahooMessenger, Skype,
GTalk, dsb) dan masih banyak lagi yang lain. Dalam perkembangan-nya, banyak
perangkat lunak yang dulu hanya kita bisa nikmati dengan menginstall aplikasi
tersebut di komputer kita (on-premise) mulai bisa kita nikmati lewat Cloud
Computing. Keuntungan-nya, kita tidak perlu membeli lisensi dan tinggal
terkoneksi ke internet untuk memakai-nya. Contoh: Microsoft Office yang
sekarang kita bisa nikmati lewat Office 365, Adobe Suite yang bisa kita nikmati
lewat Adobe Creative Cloud, dsb.
Platform as a Service (PaaS) adalah layanan dari Cloud Computing
dimana kita menyewa “rumah” berikut lingkungan-nya (sistem operasi, network,
database engine, framework aplikasi, dll), untuk menjalankan aplikasi yang kita
6
buat. Kita tidak perlu pusing untuk menyiapkan “rumah” dan memelihara
“rumah” tersebut. Yang penting aplikasi yang kita buat bisa berjalan dengan baik
di “rumah” tersebut. Untuk pemeliharaan “rumah” ini menjadi tanggung jawab
dari penyedia layanan. Sebagai analogi, misal-nya kita sewa kamar hotel, kita
tinggal tidur di kamar yang sudah kita sewa, tanpa peduli bagaimana “perawatan”
dari kamar dan lingkungan-nya. Yang penting, kita bisa nyaman tinggal di kamar
itu, jika suatu saat kita dibuat tidak nyaman, tinggal cabut dan pindah ke hotel lain
yang lebih bagus layanan-nya. Contoh penyedia layanan PaaS ini adalah: Amazon
Web Service, Windows Azure, bahkan tradisional hosting-pun merupakan contoh
dari PaaS. Keuntungan dari PaaS adalah kita sebagai pengembang bisa fokus pada
aplikasi yang kita buat, tidak perlu memikirkan operasional dari “rumah” untuk
aplikasi yang kita buat.
Infrastructure as a Service (IaaS) adalah layanan dari Cloud Computing
dimana kita bisa “menyewa” infrastruktur IT (komputasi, storage, memory,
network dsb). Kita bisa definisikan berapa besar-nya unit komputasi (CPU),
penyimpanan data (storage) , memory (RAM), bandwith, dan konfigurasi lain-nya
yang akan kita sewa. Mudah-nya, IaaS ini adalah menyewa komputer virtual yang
masih kosong, dimana setelah komputer ini disewa kita bisa menggunakan-nya
terserah dari kebutuhan kita. Kita bisa install sistem operasi dan aplikasi apapun
diatas-nya. Contoh penyedia layanan IaaS ini adalah: Amazon EC2, Windows
Azure (soon), TelkomCloud, BizNetCloud, dsb. Keuntungan dari IaaS ini adalah
kita tidak perlu membeli komputer fisik, dan konfigurasi komputer virtual tersebut
bisa kita rubah (scale up/scale down) dengan mudah. Sebagai contoh, saat
komputer virtual tersebut sudah kelebihan beban, kita bisa tambahkan CPU,
RAM, Storage dsb dengan segera.
7
Gambar 2.3. Ilustrasi dari Cloud Computing
( Sumber : Wikipedia )
2.3.1. Model Cloud Berdasarkan Infrastuktur
Menurut National institute of Standards and Technology ( NIST ), terdapat
beberapa model dari Cloud Computing, yaitu :
1. Public Cloud
Public cloud merupakan sebuah model layanan cloud yang disediakan oleh
provider dan ditujukan untuk layanan public / massal. User hanya tinggal
mendaftar saja atau langsung dapat menggunakan fitur yang tersedia. Resource
dari cloud ini dihosting di tempat penyedia layanan, mulai dari aplikasi hingga
media penyimpanan/storage. Contoh dari public cloud yang popular adalah
Windows Live Mail, Google Mail, Office 365, Windows Azure, dan Amazon EC2.
8
Gambar 2.4. Public Cloud
(Sumber : Janakiram MSV Cloud Computing Strategist , 2010 )
2. Private Cloud Computing
Private Cloud dibangun, dioperasikan, dan dikelola oleh sebuah organisasi
untuk perusahaan penggunaan/keperluan internal untuk mendukung operasi
bisnisnya secara eksklusif. Mulai dari masyarakat umum, perusahaan swasta,
hingga organisasi pemerintah di seluruh dunia yang mengadopsi model ini untuk
mengeksploitasi manfaat cloud seperti fleksibilitas, pengurangan biaya,kecepatan
dan sebagainya.
Gambar 2.5. Private Cloud
(Sumber : Janakiram MSV Cloud Computing Strategist, 2010 )
3. Community Cloud.
Community cloud terbagi menjadi beberapa organisasi dan mendukung
komunitas tertentu yang telah berbagi kepentingan misalnya misi, persyaratan
keamanan, kebijakan, dan pertimbangan. Community cloud dikelola oleh sebuah
9
organisasi atau pihak ketiga dan mungkin oleh anggota aktif. Salah satu contoh
dari Community Cloud adalah OpenCirrus, yang dibentuk oleh HP, Intel, Yahoo,
dan lainnya.
Gambar 2.6. Community Cloud
( Sumber : Janakiram MSV Cloud Computing Strategist, 2010 )
4. Hybrid Cloud
Hybrid cloud merupakan infrastruktur yang terdiri dari dua atau lebih cloud
(private, community, atau public). Jadi, Hybrid cloud adalah infrastruktur cloud
berupa gabungan dari beberapa cloud yang ada.
Gambar 2.7. Hybrid Cloud
(Sumber : Janakiram MSV Cloud Computing Strategist,2010 )
2.3.2. Karakteristik Cloud Computing
Sampai saat ini paradigma Cloud Computing ini masih berevolusi, masih
menjadi subjek perdebatan dikalangan akademisi, vendor IT dan pemeritah/bisnis.
Berdasarkan NIST (National Institute of Standards and Technology), ada 5
10
kriteria yang harus dipenuhi oleh sebuah sistem untuk bisa dimasukkan kedalam
keluarga Cloud.
1. On Demand Self Service
Pengguna dapat memesan dan mengelola layanan tanpa interaksi manusia
dengan penyedia layanan, Misalnya dengan menggunakan, sebuah portal web dan
manajemen portal web dan manajemen antarmuka. Pengadaan dan perlengkapan
layanan serta sumber daya yang terkait terjadi secara otomatis pada penyedia.
2. Broad Network Access
Layanan yang tersedia terhubung melalui jaringan pita lebar, terutama untuk
dapat diakses secara memadai melalui jaringan internet, baik menggunakan thin
client, thick client ataupun media lain seperti smartphone.
3. Resources Pooling
Penyedia layanan Cloud, memberikan layanan melalui sumber daya yang
dikelompokkan di satu atau berbagai lokasi data center yang terdiri dari sejumlah
server dengan mekanisme multi-tenant. Mekanisme multi-tenant ini
memungkinkan sejumlah sumber daya komputasi tersebut digunakan secara
bersama-sama oleh sejumlah pengguna, di mana sumber daya tersebut baik yang
berbentuk fisik maupun virtual, dapat berbentuk fisik maupun virtual, dapat
dialokasikan secara dinamis untuk kebutuhan pengguna/pelanggan sesuai
permintaan. Dengan demikian, pelanggan tidak perlu tahu bagaimana dan
darimana permintaan akan sumber daya komputasinya dipenuhi oleh penyedia
layanan. Yang penting, setiap permintaan dapat dipenuhi. Sumber daya komputasi
ini meliputi media penyimpanan, memory, processor, pita jaringan dan mesin
virtual.
4. Rapid elasticity
Kapasitas komputasi yang disediakan dapat secara elastis dan cepat
disediakan, baik itu dalam bentuk penambahan ataupun pengurangan kapasitas
yang diperlukan. Untuk pelanggan sendiri, dengan kemampuan ini seolah-olah
11
kapasitas yang tersedia tak terbatas besarnya, dan dapat "dibeli" kapan saja
dengan jumlah berapa saja.
5. Measured services
Sumber daya Cloud yang tersedia harus dapat diatur dan di optimasi
penggunaannya, dengan suatu sistem pengukuran yang dapat mengukur
penggunaan dari setiap sumber daya komputasi yang digunakan (penyimpanan,
memory, processor, lebar pita, aktivitas user, dan lainnya). Dengan demikian,
jumlah sumberdaya yang digunakan dapat secara transparan diukur yang akan
menjadi dasar bagi user untuk membayar biaya penggunaan layanan.
2.4. Load Balancing
Load Balancing adalah teknik untuk mendistribusikan beban trafik pada
dua atau lebih jalur koneksi secara seimbang, agar trafik dapat berjalan optimal,
memaksimalkan throughput, memperkecil waktu tanggap (response time) dan
menghindari overload pada salah satu jalur koneksi. Proses ini mampu
mengurangi beban kerja setiap server, serta memungkinkan server untuk
menggunakan bandwith yang tersedia secara lebih efektif. Load Balancing
digunakan pada saat sebuah server telah memiliki jumlah user yang telah melebihi
maksimal kapasitasnya. Load Balancing juga mendistribusikan beban kerja secara
merata di dua atau lebih komputer, link jaringan, CPU, hard drive, atau sumber
daya lainnya, untuk mendapatkan pemanfaatan sumber daya yang optimal.
12
Gambar 2.2. Skema Load Balancing
( Sumber : Gerrits et al, 2012 )
Terdapat beberapa algoritma pada Load Balancing, antara lain :
Round Robin (RR). Algoritma Round Robin merupakan algoritma yang
paling sederhana dan banyak digunakan oleh perangkat Load Balancing.
Algoritma ini membagi beban secara bergiliran dan berurutan dari satu server
ke server lain sehingga membentuk putaran.
Least Connection (LC). Algoritma Least Connection akan melakukan
pembagian beban berdasarkan banyaknya koneksi yang sedang dilayani oleh
sebuah server. Server dengan pelayanan koneksi yang paling sedikit akan
diberikan beban yang berikutnya akan masuk.
Weighted Round Robin (WRR). Algoritma WRR memperlakukan real server
dengan kapasitas proses yang berbeda. Masing masing real server dapat diberi
bobot bilangan integer yang menunjukkan kapasitas proses, dimana dapat
diinisialisasikan bobot awal adalah 1.
2.5. Algoritma Weighted Least Connection (WLC)
Algoritma Weighted Least Connection (WLC) merupakan kumpulan dari
beberapa algoritma Least Connection dimana dapat ditentukan bobot kinerja dari
masing-masing server. Server dengan bobot yang lebih tinggi akan menerima
presentase yang lebih besar dari koneksi-koneksi aktif pada suatu waktu. Bobot
pada masing-masing server dapat ditentukan dan koneksi jaringan dijadwalkan
pada masing-masing real server dengan presentase jumlah koneksi aktif untuk
masing masing server sesuai dengan perbandingan servernya. Bobot default
adalah 1. (ZHOU et al, 2013).
Algoritma WLC ini sangat baik digunakan untuk server yang memiliki
kapasitas yang berbeda. Sebagai contoh algoritma ini, ketika terdapat 2 buah
server yang memiliki jumlah koneksi aktif yang sama namun salah satu server
memiliki kapasitas yang lebih besar dibandingkan yang lain. Pada saat ada
13
koneksi aktif baru yang akan masuk, sistem akan melakukan penghitungan
presentase untuk kapasitas dari masing – masing server untuk kemudian
menggunakan presentase tersebut untuk meneruskan koneksi aktif / request
tersebut menuju server yang memiliki kapasitas lebih besar.
2.6. Linux Virtual Server
Linux Virtual Server atau disingkat LVS merupakan suatu teknologi
clustering yang dapat digunakan untuk membangun suatu server dengan
menggunakan kumpulan dari beberapa buah real server. LVS merupakan
implementasi dari komputer cluster dengan metode High Availability. Linux
Virtual Server dapat mengarahkan koneksi jaringan ke beberapa server yang
memiliki beban kerja masing masing, yang dapat digunakan untuk membangun
layanan berskala tinggi dan sangat tersedia. Linux Virtual Server mengarahkan
koneksi jaringan ke server yang berbeda sesuai dengan algoritma penjadwalan
dan membuat layanan paralel cluster untuk muncul sebagai layanan virtual pada
satu alamat IP.
Gambar 2.8. Arsitektur Linux Virtual Server
Sumber www.linuxvirtualserver.org
14
Aplikasi pengunjung berinteraksi dengan cluster seolah-olah itu server
tunggal. Pengunjung tidak terpengaruh oleh interaksi dengan cluster dan tidak
perlu modifikasi. Skalabilitas dicapai dengan transparan menambahkan atau
menghapus sebuah node di cluster. High availability disediakan dengan
mendeteksi kegagalan node atau daemon dan konfigurasi ulang sistem yang tepat.
2.7. Apache Web Server
Apache adalah sebuah nama web server yang bertanggung jawab pada
request-response HTTP dan logging informasi secara detail (kegunaan basicnya).
Selain itu, Apache juga diartikan sebagai suatu web server yang kompak, modular,
mengikuti standar protokol HTTP, dan tentu saja sangat digemari. Kesimpulan ini
bisa didapatkan dari jumlah pengguna yang jauh melebihi para pesaingnya. Sesuai
hasil survei yang dilakukan oleh Netcraft, bulan Januari 2005 saja jumlahnya
tidak kurang dari 68% pangsa web server yang berjalan di Internet. Ini berarti jika
semua web server selain Apache digabung, masih belum bisa mengalahkan jumlah
Apache.
Apache memiliki fitur-fitur canggih seperti pesan kesalahan yang dapat
dikonfigurasi, autentikasi berbasis basis data dan lain-lain. Apache juga didukung
oleh sejumlah antarmuka pengguna berbasis grafik (GUI) yang memungkinkan
penanganan server menjadi lebih mudah. Apache merupakan perangkat lunak
sumber terbuka dikembangkan oleh komunitas terbuka yang terdiri dari
pengembang-pengembang dibawah naungan Apache Software Foundation.
Saat ini ada dua versi Apache yang bisa dipakai untuk server produksi,
yaitu versi mayor 2.0 dan versi mayor 1.3. Apache merupakan webserver yang
paling banyak digunakan saat ini. Hal ini disebabkan oleh beberapa sebab, di
antaranya adalah karena sifatnya yang open source dan mudahnya
mengkostumisasikannya. diantaranya dengan menambahkan support secure
protocol melalui ssl dan konektifitasnya dengan database server melalui bahasa
scripting PHP .
15
2.8. QoS ( Quality of services )
QoS adalah kemampuan suatu jaringan untuk menyediakan layanan
yang baik dengan menyediakan kapasitas jaringan, mengatasi jitter dan delay
(waktu tunda). QoS dirancang untuk membantu pengguna menjadi lebih
produktif dengan memastikan bahwa pengguna mendapatkan kinerja yang
handal dari aplikasi-aplikasi berbasis jaringan. QoS mengacu pada
kemampuan jaringan untuk menyediakan layanan yang lebih baik pada trafik
jaringan tertentu melalui teknologi yang berbeda-beda. QoS merupakan suatu
tantangan yang besar dalam jaringan berbasis IP dan internet secara.
Teknologi QoS adalah teknologi yang memungkinkan administrator
jaringan untuk dapat menangani berbagai efek akibat terjadinya konjesti pada
lalu lintas aliran paket dari berbagai layanan. Penanganan QoS dilakukan
dengan memanfaatkan sumber daya jaringan secara optimal, dibandingkan
dengan menambah kapasitas fisik jaringan tersebut. QoS bertujuan untuk
menyediakan kualitas layanan yang berbeda-beda untuk beragam kebutuhan
akan layanan di dalam jaringan IP, sebagai contoh untuk menyediakan
bandwidth yang khusus, menurunkan hilangnya paket-paket, menurunkan
waktu tunda dan variasi waktu tunda di dalam proses transmisinya. QoS
menawarkan kemampuan untuk mendefinisikan atribut-atribut layanan yang
disediakan, baik secara kualitatif maupun kuantitatif.
2.8.1. Throughput
Throughput adalah besar ukuran data yang berhasil diterima pada
proses transmisi data dalam rentang waktu tertentu. Biasanya Throughput
selalu dikaitkan dengan bandwidth, namun Throughput selalu lebih kecil dari
bandwidth (Baskoro P.A, dkk, 2011 ). Throughput walau pun memiliki satuan dan
rumus yang sama dengan bandwidth, tetapi Throughput lebih pada
menggambarkan bandwidth yang sebenarnya (aktual) pada suatu waktu tertentu
dan pada kondisi dan jaringan internet tertentu yang digunakan untuk
mendownload suatu file dengan ukuran tertentu. Rumus untuk menghitung
16
Throughput, adalah merupakan hasil dari paket yang diterima (byte) dibagi lama
pengamatan (s) dimana menghasilkan nilai bernilai Bit per Second (Bps).
2.8.2. Response time
Response time adalah rentang waktu antara seorang user memasukkan
perintah ke sistem hingga sistem memberikan jawaban dengan
menampilkannya ke display (monitor) (Stallings, 2004). Dalam pengukuran
Response time, waktu yang diukur adalah dari user mulai mengklik tombol load
pada web browser hingga halaman situs selesai dibuka (downloaded)
seluruhnya.
2.9. Apache J-Meter
Stress testing adalah pengujian atau testing guna mengetahui dan
mengukur kemampuan software dalam menangani suatu kondisi yang tidak
normal dari sisi volume ataupun kuantitas. Misalkan untuk mengetahui dan
mengukur kekuatan sebuah website dalam menangani pengunjung dalam satu
waktu secara bersamaan.
Secara umum Apache JMeter adalah sebuah tools yang memiliki fungsi
sebagai berikut :
Sebuah Tool atau alat yang digunakan untuk melakukan performace test
pada sebuah software.
Apache JMeter dapat memberikan request dalam jumlah yang sangat
banyak secara bersamaan dalam satu waktu pada server
Apache JMeter dapat memberikan Analisa dan Laporan dari hasil
pengujian
Berikut ini adalah requirement yang dibutuhkan untuk menjalankan
Apache JMeter, yaitu :
JRE (Java Runtime Enviroment) >= 1.6
Operating Systems Unix (Solaris, Linux, etc), Windows (98, NT, XP, etc)
17
2.10. HTTPerf
HTTPerf adalah sebuah tool untuk mendapatkan performansi dari sebuah
web server. HTTPerf sangat fleksibel untuk menghasilkan berbagai macam HTTP
request untuk mendapatkan performansi dari sebuah web server. Fokus dari
HTTPerf adalah tidak mengimplementasikan sebuah benchmark saja, tetapi juga
memberikan tool yang robust dan memiliki performansi tinggi untuk
memfasilitasi baik di level mikro atau makro dalam sebuah benchmark. Tool
HTTPerf juga telah support HTTP/1.1 dan protokol SSL.
top related