Home Backend Development PHP Tutorial memcache PHP module Memcached has more features than Memcache

memcache PHP module Memcached has more features than Memcache

Jul 29, 2016 am 08:45 AM
memcache

For example, there are two Memcached modules in PECL, Memcache and Memcached. Currently, most PHP environments use the Memcache version without d in the name. This version was released earlier and is a native version. The Memcached version with d is based on libmemcached, so the Memcached version has more complete functions.
Install the Memcached version of the PHP module
wget http://download.tangent.org/libmemcached-0.35.tar.gz
tar zxf libmemcached-0.35.tar.gz
cd libmemcached-0.35
./configure
make
make install
wget http://pecl.php.net/get/memcached-1.0.0.tgz
tar zxf memcached-1.0.0.tgz
cd memcached-1.0.0
phpize
./configure
make
make install
Open php.ini and add:
extension = "memcached.so"
The installation is complete. You can confirm it with the following command:
php -m | grep mem
Demonstrate the new features of the Memcached version
First make up a question, Assume that the initial value of counter is an integer, do not use the increment method, and complete increment by one each time through get/set.
In the Memcache version, we can only proceed as follows:
$m = new Memcache();
$m->addServer('localhost', 11211);
$v = $m-> get('counter');
$m->set('counter', $v + 1);
Since the two actions of get/set cannot be operated as an atom, when multiple processes process them at the same time, There is a possibility of loss, and what’s even more annoying is that you don’t know when it will be lost.
Let’s look at how we do it in the Memcached version:
$md = new Memcached();
$md->addServer('localhost', 11211);
$v = $md->get(' counter', null, $token)
$md->cas($token, 'counter', $v + 1);
cas is a function provided in the Memcached version. To put it bluntly, it is an optimistic locking function. If you If you var_dump the value of $token, you will find that $token is actually a version number. If the version number of $token obtained through get does not correspond to the cas, it means that other operations have been updated. At this time, the cas operation will If it fails, it's up to you as to how to proceed.
Note: If you want to reproduce the conflict manually, you can sleep for a few seconds between get and cas, copy the two scripts, and execute them one after another.
By the way, the recommended hash settings for the Memcached version module are as follows:
$md->setOption(Memcached::OPT_DISTRIBUTION, Memcached::DISTRIBUTION_CONSISTENT);
$md->setOption(Memcached::OPT_HASH, Memcached: :HASH_CRC);
Summary
The Memcached version also has many functions that Memcache does not have, such as automatically supporting multiple servers through getByKey, setByKey, etc. I won’t go into details. Which extension to use is self-evident.
Supplement: http://code.google.com/p/memcached/wiki/PHPClientComparison

The above introduces the memcache PHP module. Memcached has more functions than Memcache, including memcache content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to use Memcache in PHP development? How to use Memcache in PHP development? Nov 07, 2023 pm 12:49 PM

In web development, we often need to use caching technology to improve website performance and response speed. Memcache is a popular caching technology that can cache any data type and supports high concurrency and high availability. This article will introduce how to use Memcache in PHP development and provide specific code examples. 1. Install Memcache To use Memcache, we first need to install the Memcache extension on the server. In CentOS operating system, you can use the following command

How to use Memcache for efficient data reading and writing operations in PHP development? How to use Memcache for efficient data reading and writing operations in PHP development? Nov 07, 2023 pm 03:48 PM

In PHP development, using the Memcache caching system can greatly improve the efficiency of data reading and writing. Memcache is a memory-based caching system that can cache data in memory to avoid frequent reading and writing of the database. This article will introduce how to use Memcache in PHP for efficient data reading and writing operations, and provide specific code examples. 1. Install and configure Memcache First, you need to install the Memcache extension on the server. able to pass

Utilizing Memcache caching technology to improve the concurrent processing capabilities of PHP applications Utilizing Memcache caching technology to improve the concurrent processing capabilities of PHP applications May 18, 2023 am 08:12 AM

With the rapid development of the Internet, more and more applications need to face a large number of concurrent requests. How to improve the concurrent processing capabilities of applications has become a problem that developers need to solve. Among them, using Memcache caching technology for concurrency optimization has become a relatively popular solution. Memcache is an efficient caching technology suitable for large-scale web applications, databases and distributed systems. Its characteristic is to store data in memory to achieve high-speed read and write operations. During the data access process of web applications,

How to use Memcache to optimize data storage operations in your PHP application? How to use Memcache to optimize data storage operations in your PHP application? Nov 08, 2023 pm 09:06 PM

How to use Memcache to optimize data storage operations in your PHP application? In web application development, data storage is a crucial link. In PHP applications, Memcache, as a memory cache system, can effectively improve the efficiency of data storage and reading operations. This article will introduce how to use Memcache to optimize data storage operations in PHP applications, and attach specific code examples. Step 1: Install the Memcache extension First, you need to install Me in your PHP environment

How to use Memcache for distributed caching in PHP development? How to use Memcache for distributed caching in PHP development? Nov 07, 2023 pm 03:04 PM

As web applications become increasingly complex, performance has become a critical issue. In many applications, database queries are one of the most time-consuming operations. In order to avoid frequently reading data from the database, a caching system can be used to store frequently read data in memory for quick access. In PHP development, using Memcached for distributed caching is an extremely common practice. In this article we will introduce how to use Memcached for distributed caching. What is Memca

How to use Memcache to achieve efficient data caching and sorting operations in PHP development? How to use Memcache to achieve efficient data caching and sorting operations in PHP development? Nov 07, 2023 pm 02:28 PM

PHP is a very popular programming language commonly used for server-side web application development. As the user scale of web applications continues to grow and the amount of data continues to increase, efficient data caching and sorting operations become more and more important. Memcache is a very useful tool in this situation. This article will introduce how to use Memcache to achieve efficient data caching and sorting operations in PHP development, and provide specific code examples. What is Memcache? Memcache is

Practice and thinking on optimizing data interaction with Memcache caching technology in PHP Practice and thinking on optimizing data interaction with Memcache caching technology in PHP May 17, 2023 pm 09:51 PM

The practice and thinking of Memcache caching technology to optimize data interaction in PHP In modern Web applications, data interaction is a very important issue. It is not efficient enough and will limit the scalability and performance of Web applications. In order to speed up data interaction, our usual approach is to optimize the design of the database, improve the performance of the hardware and increase the server capacity. However, these methods all have a common limitation: they increase the cost of the system. In recent years, Memcache technology has made progress in solving this problem.

How to use Memcache for efficient data writing and querying in PHP development? How to use Memcache for efficient data writing and querying in PHP development? Nov 07, 2023 pm 01:36 PM

How to use Memcache for efficient data writing and querying in PHP development? With the continuous development of Internet applications, the requirements for system performance are getting higher and higher. In PHP development, in order to improve system performance and response speed, we often use various caching technologies. One of the commonly used caching technologies is Memcache. Memcache is a high-performance distributed memory object caching system that can be used to cache database query results, page fragments, session data, etc. By storing data in memory

See all articles