Home > Backend Development > PHP Tutorial > The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)

The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)

不言
Release: 2023-04-03 16:36:02
Original
2852 people have browsed it

The content of this article is about the impact of memcache (memory caching technology) on the speed of PHP page access (pictures and texts). It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you. helped.

1. Introduction to Memcache
Memory caching technology: memcache is an intermediate medium that implements PHP language to operate on memory.

The workflow of MemCache is as follows: first check whether the client's request data is in memcached. If so, return the request data directly and no longer Perform any operation on the database; if the requested data is not in memcached, check the database, return the data obtained from the database to the client, and cache a copy of the data to in memcached (the memcached client is not responsible and needs to be implemented explicitly by the program); each time the database is updated, the data in memcached is updated to ensure consistency; when the memory space allocated to memcached is used up, LRU (Least) will be used Recently Used (Least Recently Used) policy plus expiration policy, the invalid data is replaced first, and then the recently unused data is replaced.

The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
2. The difference between Memcache and memcached

Memcache is the name of this project, and memcached is the name of its main program file on the server side.

4. Server-side and client-side installation of Memcache (adding modules to php):
1. Unzip the memcache source code package:

tar axf memcache-2.2.5.tgz
Copy after login

2. Compile the binary from the previous php The command is added to the environment variable to ensure that the php command can be directly called

vim /root/.bash_profil
PATH=$PATH:$HOME/bin:/usr/local/lnmp/mysql/bin:/usr/local/lnmp/nginx/sbin:/usr/local/lnmp/php/bine
source /root/.bash_profile
Copy after login

3. Create a precompiled environment and compile and assemble the memcache source code package
phpize is used to extend the php extension module, which can be created through phpize PHP plug-in modules, for example, if you want to add extension modules such as memcached or ImageMagick to the originally compiled PHP, you can use phpize.
In other words, the role of phpize can be understood like this: detecting the environment (the phpize tool is in the PHP installation directory. Based on this, phpize corresponds to the PHP environment at that time, so the corresponding configure must be generated based on the PHP configuration. file), create a configure file. You must run phpize in a directory. Then phpize knows which directory your environment is, and the configure file is created in that directory.
The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)

cd memcache-2.2.5   phpize
./configure              # 源码编译,已经安装好了php,我们就不用再指定新的php扩展模块路径make  
make install
Copy after login

5. After the compilation is completed, we are prompted to enter the php/extensions/no-debug-non-zts-20131226/ directory. In this directory, we can view what has been added to php module, we found that our memcache module does not yet exist, so we went to the php configuration file to add the memcache module.

cd /usr/local/lnmp/php/lib/php/extensions/no-debug-non-zts-20131226/
ls
php -m | grep memcache       过滤memcache模块,发现现在还没有
cd /usr/local/lnmp/php/etc/   
vim php.ini                  # 编辑php的配置文件873 
extension=memcache.so    # 将873行memcache模块的注释打开
/etc/init.d/php-fpm reload  # 重载php
php -m | grep memcache       # 再次过滤memcache模块
Copy after login

The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
6. Install memcache server

yum install memcached           # 安装memcached服务端
/etc/init.d/memcached start     # 打开memcached服务
netstat -antlp   # memcached监听11211端口
Copy after login

The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)

cd memcache-2.2.5rpm -q memcached        # 查看memcached的配置文件
Copy after login

7. Set memcached password

cd /usr/local/lnmp/nginx/html/
vim example.php  # 仅仅查看,是php代码
vim memcache.php
Copy after login

The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
访问example.php:
The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
访问memcache.php:
The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
输入密码后:(右边可以看到HIT命中率)
The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
8.访问测试,查看安装了memcache模块后,再浏览器处访问安装了memcache和未i安装memcache的网也,查看性能的变化
(1)访问 index.php后,我们可以分析一下浏览器的并发行和出错情况
The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
处理情况:
The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
可以看到每秒处理的访问请求为384个,出错个数为84个
(2)按照同样的测试方法,我们测试访问example.php
The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)
可以看到每秒处理的访问请求为940个,出错个数为0个,速度提高了将近三倍,错误率大大降低
(3)在浏览器处多次访问example.php,查看命中情况为百分之百。

The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text)

相关文章推荐:

Nginx中的Rewrite伪静态法则的讲解(详细)

Nginx配置PHP的详细步骤

The above is the detailed content of The impact of memcache (memory caching technology) on the speed of PHP page access (picture and text). For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template