Dalam merancang system, kita perlu mempertimbangkan jumlah user yang menggunakan dan juga perlu mempertimbangkan kegagalan hardware yang mungkin terjadi. Terkait jumlah user, maka yang perlu dipertimbangkan adalah bagaimana jika suatu sistem menjadi lambat karena terlalu banyak user yang menggunakan. Contoh dari kegagalan hardware adalah processor rusak, memory rusak, hardisk rusak atau network card yang rusak. Dengan demikian kita perlu merancang sistem yang dapat mengatasi sistem yang lamabat karena user terlalu penuh dan juga kegagalan hardware yang mungkin timbul. Dalam contoh kali ini kita akan membangun high availability aplikasi berbasis web yang menggunakan ha-proxy, web server dan database MySQL.
- HAProxy
Dari website HAProxy yang ada di http://haproxy.1wt.eu/ kita mendapatkan skema dari aplikasi HAProxy adalah seperti gambar berikut ini:
Dari gambar tersebut terlihat bahwa HAProxy akan membagi beban kepada beberapa web server yang siap melayani user. Jika ada web server yang rusak atau sibuk, HAProxy akan mengalihkan ke web server yang siap melayani user. - MySQL Cluster
Dari website yang ada di http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-overview.html kita mendapatkan gambar seperti berikut ini:
Terlihat bahwa beban database dibagi ke beberapa server MySQL sehingga jika ada server MySQL yang gagal maka bisa dialihkan ke server MySQL yang lain.
Untuk informasi lebih lanjut mengenai high availability silahkan mengunjungi http://en.wikipedia.org/wiki/High_availability .
Kunjungi www.proweb.co.id untuk menambah wawasan anda.