Di blog saya sebelumnya, saya berbicara tentang pengenalan singkat tentang memcache dan bagaimana hal itu membantu kita membuat akses database lebih cepat di sebagian besar aplikasi web. Jika Anda belum membaca blognya, Anda dapat mengikuti tautannya. - http. //cloudkul. com/blog/memcached-a-distributed-memory-object-caching-system Show Hari ini, mari kita fokus pada beberapa aspek praktis dari memcache. Saya akan mulai dengan instalasi memcache dasar di Ubuntu 14. 04 diikuti dengan pendekatan praktis untuk menyimpan data dari MySQL menggunakan skrip Memcached dan PHP Ini dia PRASYARAT Sebelum kita mulai, Anda harus memiliki mesin ubuntu dengan server LAMP dasar yang dikonfigurasi di dalamnya INSTALL MEMCACHED PADA UBUNTU 14. 04 Jalankan perintah berikut untuk menginstal memcached dan komponennya. - 1 2 sudo apt-dapatkan perbarui sudo apt-dapatkan pasang memcached php5-memcached
1 layanan memcache mulai ulang
Untuk memverifikasi instalasi, buat file info. php di root dokumen default apache i. dan /var/www/html. - 1 sudo nano /var/www/html/info.php
1 2 3 4 5 <?php
phpinfo();
?>
1 http. //server_domain_name_or_IP/info. php
Ini berarti ekstensi memcache diaktifkan dan ditemukan oleh server web Periksa juga apakah layanan memcache sedang berjalan dengan mengetikkan perintah berikut. - 1 ps aux . grep memcache
Masuk ke mysql. - 1 mysql -u root -p
1 2 3 BUAT DATABASE memcached_test;
GUNAKAN memcached_test;
1 BERIKAN SEMUA AKTIF memcached_test. * UNTUK menguji@localhostIDENTIFIED BY ‘mytesting123’;
1 2 3 BUAT TABEL sample_data (id int, name varchar(20));
INSERT KE DALAM sample_data NILAI (100, “Joe Phillips”);
BUAT Script PHP UNTUK CACHE DATA MYSQL Buat skrip php bernama 'database_test. php’ di root dokumen kami sebagai. - 1 sudo nano /var/www/html/database_test.php
1 2 3 4 5 6 7 <?php
$mem = baru Memcache();
$mem->addServer(“127.0.0.1 ” , 11211);
?>
1 2 3 4 5 6 7 8 9 10 11 <?php
$mem = baru Memcache();
$mem->addServer(“127.0.0.1 ” , 11211);
mysql_connect( “ localhost ” , “test”, “mytesting123”) or die(mysql_error());
mysql_select_db( “ memcache_test”) or die(mysql_error());
?>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <?php
$mem = baru Memcache();
$mem->addServer(“127.0.0.1 ” , 11211);
mysql_connect( “ localhost ” , “test”, “mytesting123”) or die(mysql_error());
mysql_select_db( “ memcache_test”) or die(mysql_error());
$kueri = “ PILIH name FROM sample_data WHERE id = 100”;
$querykey = “ KEY” . md5($kueri);
?>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 <?php
$mem = baru Memcache();
$mem->addServer(“127.0.0.1 ” , 11211);
mysql_connect( “ localhost ” , “test”, “mytesting123”) or die(mysql_error());
mysql_select_db( “ memcache_test”) or die(mysql_error());
$kueri = “ PILIH name FROM sample_data WHERE id = 100”;
$querykey = “ KEY” . md5($kueri);
$hasil = $mem->get($querykey);
jika ($hasil) {
cetak “ <p>Data was: ” . $hasil[0] . . “ </p>”;
cetak “ <p>Caching success!</p>< . p>Retrieved data from memcached!</p> ” ;
}
?>
Untuk mencapai ini, kita harus menyediakan variabel kunci $querykey untuk referensi data, data itu sendiri disimpan dalam variabel $result dan waktu untuk menyimpan data dalam hitungan detik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 <?php
$mem = baru Memcache();
$mem->addServer(“127.0.0.1 ” , 11211);
mysql_connect( “ localhost ” , “test”, “testing123”) or die(mysql_error());
mysql_select_db( “ mem_test”) or die(mysql_error());
$kueri = “ PILIH name FROM sample_data WHERE id = 1”;
$querykey = “ KEY” . md5($kueri);
$hasil = $mem->get($querykey);
jika ($hasil) {
cetak “ <p>Data was: ” . $hasil[0] . . “ </p>”;
cetak “ <p>Caching success!</p>< . p>Retrieved data from memcached!</p> ” ;
}
else {
$hasil = mysql_fetch_array(mysql_query($query)) or die(mysql_error());
$mem->setel($querykey, $result, 20);
cetak “ <p>Data was: ” . $hasil[0] . . “ </p>”;
cetak “ <p>Data not found in memcached.</p>< . p>Data retrieved from MySQL and stored in memcached for next time.</p> ” ;
}
?>
UJI SKRIPT Tekan URL. - 1 http. //server_domain_name_or_IP/database_test. php
Jika kami menyegarkan ini dalam 20 detik, halaman tersebut sekarang akan menampilkan pesan yang berbeda. - Setelah menunggu beberapa saat, konten cache akan kedaluwarsa dan akan dihapus dari memcache lagi. Jika kita me-refresh pada titik ini, itu akan menampilkan pesan pertama lagi karena server harus kembali ke database untuk mengambil nilai data Sekarang, Anda mungkin sudah memiliki gambaran tentang cara kerja memcache dan cara menggunakannya agar server web Anda tidak mengenai database berulang kali untuk konten yang sama. Untuk apa Memcache digunakan?Apa itu Memcache? . Ini menawarkan solusi sumber terbuka yang matang, dapat diskalakan, untuk memberikan waktu respons sub-milidetik menjadikannya berguna sebagai penyimpanan cache atau sesi .
Kapan sebaiknya Anda tidak menggunakan memcache?Memcached itu hebat. Tapi tidak untuk setiap situasi. Anda memiliki objek yang lebih besar dari 1MB. Memcached bukan untuk media besar dan streaming gumpalan besar. . Anda memiliki kunci yang lebih besar dari 250 karakter. . Penyedia hosting Anda tidak mengizinkan Anda menjalankan memcache. . Anda menjalankan di lingkungan yang tidak aman. . Anda menginginkan ketekunan Apakah Memcache adalah server?Memcached adalah sistem caching sisi server yang gratis dan bersumber terbuka, serta dapat dipasang di VPS atau server khusus apa pun. Sistem caching dapat secara dramatis meningkatkan kinerja situs web Anda.
Apakah Memcache sebuah kunciMemcached adalah penyimpanan nilai kunci dalam memori untuk bongkahan kecil data arbitrer (string, objek) dari hasil panggilan database, panggilan API, atau perenderan halaman. Memcached sederhana namun kuat. Desainnya yang sederhana mempromosikan penerapan cepat, kemudahan pengembangan, dan menyelesaikan banyak masalah yang dihadapi cache data besar. |