• Program Baru W3function

    Online Courses

    Premium tutorial pembelajaran tahap pembuatan website secara menyeluruh mulai dari desain grafis, desain web, pengembangan, publikasi website di internet sampai dengan tekhnik SEO

    Materi: Photoshop, HTML5, CSS3, jQuery, PHP, MySQL, Semantic template, Responsif desain

    Mendaftar
  • Paket Toko Online

    W3function Store ®

    Solusi paket website toko online murah dan berkualitas dengan fitur yang lengkap beserta tema design yang banyak dan menarik

    Selengkapnya
  • Desain dan Pengembangan Web

    Custom Project

    Kami mengerti jenis bisnis Anda berbeda dengan yang lain sehingga Anda membutuhkan website yang benar-benar mencitrakan bisnis anda. Apapun jenis website yang ingin Anda buat kami akan membuatnya bekerja untuk Anda

    Selengkapnya

Penggunaan Memcached dengan PHP

06‘12
March

info66.jpg

Aplikasi web yang sangat dinamis tentunya akan memperlambat kinerja web itu sendiri, karena semakin dinamisnya sebuah aplikasi maka semakin banyak juga data yang akan kita load dari database. Untuk menyiasatinya maka kita dapat menggunakan memcached, setahun yang lalu saya pernah menulis article tentang Memcached namun karena hilangnya data saat migrasi server maka pada kesempatan article kali ini saya ingin mengulas ulang tentang penggunaan memcached dengan PHP

Apakah itu Memcached?

Memcached adalah sebuah technologi yang digunakan sebagai suatu sistem penyimpanan dan pendistribusian data didalam memory server (RAM). Memcached pertama kali dikembangkan oleh Brad Fitzpatrick untuk LiveJournal pada tahun 2003, saat ini memcached merupakan project yang open source karena itu kita dapat menggunakan dan menerapkannya pada aplikasi web kita secara gratis. Dengan penggunaan memcached kita bisa mempercepat aplikasi karena dengan load data melalui memory (Memcached) maka otomatis beban pengambilan data dari database akan hilang.

Saat ini memcached sudah banyak digunakan oleh situs-situs besar diantaranya :

Konsep penyimpanan dan pendistribusian data dengan metode konvensional dari database tanpa menggunakan memcache dapat anda lihat pada gambar di bawah :

Konsep penyimpanan dan pendistribusian data dengan Memcached

Pada awal client melakukan request data maka aplikasi melakukan akses terhadap database lalu aplikasi melakukan penyimpanan data yang telah di ambil dari database kedalam cluster memory server

Konsep penyimpanan dan pendistribusian pada awal request dapat anda lihat pada gambar di bawah :

Request selanjutnya aplikasi tidak lagi melakukan load dari database melainkan langsung dari memory server :

Dengan technology ini maka akses dan kinerja terhadap database akan menjadi ringan, sehingga aplikasi kita memiliki ferforma tinggi

Instalasi Memcached

Saat ini Memcached (php_memcache.dll) dapat di instalasi pada operating system linux dan windows. Petunjuk instalasi memcached dan sumber downloadnya bisa anda dapatkan di link berikut:

penggunaan Memcached dengan PHP

<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");

$key = md5('Key Name'); // Nama unique key yang akan disimpan (cache) di cluster memory
$cache_result = array();
$cache_result = $memcache->get($key); // nama object Memcached

if($cache_result){
	// Jika request kedua (sudah di cache di awal)
	$result=$cache_result;
}else{
	// Jika request pertama ambil data dari database lalu distribusikan di memory server
    include('connection.php'); // koneksi database
    $q=mysql_query("select judul, isi, link from berita order by id desc");
    while($r=mysql_fetch_array($q))
    $result[]=$r; // penyimpanan hasil query didalam array
    $memcache->set($key, $result, MEMCACHE_COMPRESSED, 3600000); // disimpan 3600000 detik atau 1 jam dengan nama key $key
}

//Menampilkan data
foreach($result as $r){
	echo "<h3><a href='$r[link]'>$r[judul]</a></h3>
    	  <p>". substr($r[isi],0,200) ."...<a href='$r[link]'>selengkapnya</a></p>";
}

?>

Pada fungsi diatas, pertama kali yang kita lakukan adalah memanggil object memcached lalu mengecek koneksi dari memcached. selanjutnya kita melakukan pengecekan apabila request pertama kita mengambil data dari database lalu mendistribusikannya pada memory server, namun apabila request kedua kita langsung mengambil datanya dari memory.

Lebih lanjut lagi tentang memcached dengan PHP berikut fungsinya yang lain silahkan buka di situs PHP.net

Semoga bermanfaat

Anda juga mungkin suka dengan artikel ini :

  1. Operator pada PHP
  2. Pengantar dan Dasar PHP
  3. Penggunaan Class dan Object pada PHP
  4. Penggunaan Function pada PHP (PHP Function)
  5. Control Flow dalam PHP (if - else, if - elseif - else, switch - case, for, while, break, continue, return, exit)

Komentar

  • rina (22 Jul 2013 02:35:37)

    Mantap gan, makasih banyak .Memcached memang mantap.

  • Roni (21 Mar 2013 08:45:55)

    Makasih buat infonya gan

  • asong soekamti (17 Mar 2013 06:19:26)

    mantabh broo... nambah ilmu aku :D

  • toko bunga (07 Nov 2012 09:46:47)

    Kunjungan lagi gan, ilmu yang sangat bermanfaat..semoga tambah sukses.

  • fikryaoza.com (18 Sep 2012 01:59:15)

    denger-denger facebook pake Memcached juga yah?

» Muat Komentar Sebelumnya (9 komentar) loading

Kode?

Telusuri dan Beritahu saya apabila ada komentar baru.

loading

Usulan Kontribusi dan Saran

Kami sangat terbuka dengan berbagai saran dan kontribusi positif dari Anda. Kami ingin membuat halaman blog di w3function.com ini terbuka untuk banyak penulis, sehingga kita bisa bersama-sama mendiskusikan banyak topik yang lebih luas dan lebih menarik lagi. Apabila Anda memiliki artikel yang ingin Anda kontribusikan untuk w3function.com mohon email kami.

Pemberitahuan Disclaimer © Copyright

Semua isi termasuk di dalamnya semua artikel dan gambar adalah hak cipta w3function.com, kecuali ada statement khusus yang di cantumkan (kontributor). Mohon tidak menyalin isi atau mempublikasikan kembali tanpa seizin w3function.com dan atau kontributor artikel lain

Semua sumber download dari w3function.com adalah untuk tujuan edukasi semata, bukan untuk tujuan komersial atau lainnya kecuali ada statement khusus yang di cantumkan.

Social Stuff