Jadual Kandungan
Apakah itu Memcached?
Memasang dan Mengkonfigurasi Memcached
Menggunakan Memcached untuk caching teragih
Fikiran susulan
Rumah pembangunan bahagian belakang tutorial php Bagaimana untuk menggunakan Memcache untuk caching teragih dalam pembangunan PHP?

Bagaimana untuk menggunakan Memcache untuk caching teragih dalam pembangunan PHP?

Nov 07, 2023 pm 03:04 PM
php memcache Cache yang diedarkan

Bagaimana untuk menggunakan Memcache untuk caching teragih dalam pembangunan PHP?

Apabila aplikasi web menjadi semakin kompleks, prestasi telah menjadi isu kritikal. Dalam banyak aplikasi, pertanyaan pangkalan data adalah salah satu operasi yang paling memakan masa. Untuk mengelakkan kerap membaca data daripada pangkalan data, anda boleh menggunakan sistem caching untuk menyimpan data yang kerap dibaca dalam ingatan untuk akses pantas. Dalam pembangunan PHP, menggunakan Memcached untuk caching teragih adalah amalan yang sangat biasa Dalam artikel ini kami akan memperkenalkan cara menggunakan Memcached untuk caching teragih.

Apakah itu Memcached?

Memcached ialah sistem caching memori teragih berprestasi tinggi yang boleh berkongsi data cache antara berbilang pelayan. Lebih khusus lagi, Memcached ialah sistem cache nilai kunci yang menyimpan data dalam ingatan. Ia membolehkan pembangun mencache semua jenis data dalam aplikasi mereka, termasuk halaman HTML, hasil pertanyaan pangkalan data, dan juga aplikasi web yang lengkap.

Memasang dan Mengkonfigurasi Memcached

Sebelum menggunakan Memcached, kita perlu memasangnya terlebih dahulu. Pada sistem Linux, anda boleh memasangnya dengan arahan berikut:

sudo apt-get install memcached
sudo apt-get install php-memcached
Salin selepas log masuk

Selepas pemasangan selesai, anda perlu memulakan perkhidmatan Memcached, yang boleh dimulakan dengan arahan berikut:

sudo service memcached start
Salin selepas log masuk

Seterusnya, kita perlu mengkonfigurasi Memcached modul sambungan dalam PHP. Pada sistem Ubuntu, ia boleh dikonfigurasikan dengan mengedit fail berikut:

sudo vi /etc/php/7.0/mods-available/memcached.ini
Salin selepas log masuk

Tambah kandungan berikut dalam fail:

extension=memcached.so
Salin selepas log masuk

Simpan dan tutup fail dan mulakan semula pelayan Apache:

sudo service apache2 restart
Salin selepas log masuk

Sekarang anda telah berjaya memasang dan mengkonfigurasi Memcached .

Menggunakan Memcached untuk caching teragih

Seterusnya, kami akan menunjukkan cara menggunakan Memcached untuk caching teragih. Pertama, kita perlu mencipta contoh Memcached, anda boleh menggunakan kod berikut:

$mc = new Memcached();
$mc->addServer("127.0.0.1", 11211); // 添加一个Memcached服务器
Salin selepas log masuk

Dalam kod di atas, kami mencipta contoh Memcached dan menambah pelayan Memcached. Parameter pertama fungsi addServer() ialah alamat IP pelayan Memcached, dan parameter kedua ialah nombor port (lalai ialah 11211).

Seterusnya, mari lihat contoh khusus caching hasil pertanyaan pangkalan data ke dalam Memcached. Kami menganggap bahawa kami telah menentukan fungsi fetchUserById() yang menerima ID pengguna sebagai parameter dan mengembalikan maklumat pengguna. Berikut ialah kod untuk mencapai ini:

function fetchUserById($uid) {
    // 检查缓存中是否存在该用户信息
    $mc = new Memcached();
    $mc->addServer("127.0.0.1", 11211);
    $key = "user_".$uid;
    $data = $mc->get($key);
    if (!$data) {
        // 如果缓存中不存在该用户信息,则从数据库中查询
        $pdo = new PDO("mysql:host=127.0.0.1;dbname=mydb","root","");
        $stmt = $pdo->prepare("SELECT * FROM users WHERE id=:id");
        $stmt->bindParam(":id", $uid);
        $stmt->execute();
        $data = $stmt->fetch(PDO::FETCH_ASSOC);
        // 将查询结果缓存到Memcached中
        $mc->set($key, $data, 3600);
    }
    return $data;
}
Salin selepas log masuk

Dalam kod di atas, kami menggunakan ID pengguna sebagai nama kunci cache Memcached, dan jika nama kunci wujud dalam cache, data cache dikembalikan terus. Jika tidak, kami akan menanyakan data daripada pangkalan data dan menyimpan hasil pertanyaan dalam Memcached supaya pertanyaan seterusnya boleh dibaca daripada cache.

Fikiran susulan

Dalam aplikasi sebenar, Memcached juga mempunyai banyak kegunaan lain, seperti caching halaman, caching data sesi, dll. Menggunakan Memcached boleh meningkatkan kelajuan dan prestasi aplikasi web, tetapi pada masa yang sama, lebih banyak isu perlu dipertimbangkan, seperti kemas kini cache, pembatalan cache, penembusan cache, dll. Oleh itu, apabila menggunakan Memcached untuk caching teragih, kita perlu mempertimbangkan proses pelaksanaan dan senario aplikasinya untuk meningkatkan kecekapannya.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan Memcache untuk caching teragih dalam pembangunan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Konfigurasi Projek CakePHP Konfigurasi Projek CakePHP Sep 10, 2024 pm 05:25 PM

Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

CakePHP Bekerja dengan Pangkalan Data CakePHP Bekerja dengan Pangkalan Data Sep 10, 2024 pm 05:25 PM

Bekerja dengan pangkalan data dalam CakePHP adalah sangat mudah. Kami akan memahami operasi CRUD (Buat, Baca, Kemas Kini, Padam) dalam bab ini.

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Penghalaan CakePHP Penghalaan CakePHP Sep 10, 2024 pm 05:25 PM

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Pengesah Mencipta CakePHP Pengesah Mencipta CakePHP Sep 10, 2024 pm 05:26 PM

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

See all articles