PHP之分布式缓存memcached熟习和操作
PHP之分布式缓存memcached熟悉和操作
如今互联网崛起的时代,各大网站都面临着一个大数据流问题,怎么提高网站访问速度,减少对数据库的操作;作为PHP开发人员,我们一般能想到的方法有页面静态化处理、防盗链、CDN内容分发加速访问、mysql数据库优化建立索引、架设apache服务器集群()、还有就是现在流行的各种分布式缓存技术:如memcached/redis;
1.什么是Memcached?
a.Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。
b.Memcached的键key一般是字符串,该值不能重复;value可以放入字符串、数组、数值、对象、布尔,二进制数据和图片视频
c.Memcached默认服务端口是11211
2.PHP使用Memcached步骤
准备:下载Memcached服务安装包:memcached-1.2.6-win32-bin.7z和访问Memcached服务的dll库:php_memcache.dll
www.memcached.org(官网进不去好像,可以从其他地方下载)
解压包memcached-1.2.6-win32-bin.7z(可以解压完复制放到web服务器同级目录),然后操作cmd,进入到刚才解压的目录用命令安装:memcached.exe -d install
安装完(判断是否安装完毕可以到服务列表里面查看是否有memcached服务),然后cmd用命令启动:memcached.exe -d start
具体操作如下:
启动完memcached服务后,再把下载的php_memcache.dll放到web服务器php5目录下的ext目录下
在php.ini里面修改,加载扩展库php_memcache.dll,然后重启apache服务器
开始实践,memcached主要有crud操作(即创建、读取、更新、删除值操作,具体可以查阅手册),下面弄个简单的设置值,然后读取值的操作
a.设置值页面
<?phpheader ("Content-type:text/html;charset=utf-8");//创建Memcache对象$mem = new Memcache(); //连接Memcache服务器if(!$mem->connect("127.0.0.1")) { echo "连接Memcache服务器失败!";}//设置,'myword'参数代表键key,'hello world'代表存放的值,MEMCACHE_COMPRESSED代表压缩内容,50代表存放时间,单位秒if ($mem->set('myword','hello world',MEMCACHE_COMPRESSED,50)){ echo "设置值成功!";}?>
b.读取值页面
<?phpheader ("Content-type:text/html;charset=utf-8");$mem = new Memcache(); if(!$mem->connect("127.0.0.1")) { echo "连接Memcache服务器失败!";}//读取键myword值$value = $mem->get('myword');if(!$value){ echo "读取失败!";}else{ echo "读取的值=".$value;}
c.删除、更新例子:
<?phpheader ("Content-type:text/html;charset=utf-8");//创建Memcache对象$mem = new Memcache(); //连接Memcache服务器if(!$mem->connect("127.0.0.1")) { echo "连接Memcache服务器失败!";}//设置,'myword'参数代表键key,'hello world'代表存放的值,MEMCACHE_COMPRESSED代表压缩内容,50代表存放时间,单位秒if ($mem->set('myword','hello world',MEMCACHE_COMPRESSED,50)){ echo "设置值成功!";}//读取键myword值$value = $mem->get('myword');if(!$value){ echo "读取失败!";}else{ echo "读取的值=".$value;}//更新键值$mem->replace('myword','hello everybody!');$value = $mem->get('myword');if(!$value){ echo "读取失败!";}else{ echo "读取的值=".$value;}//删除键myword值$mem->delete('myword');$value = $mem->get('myword');if(!$value){ echo "读取失败!";}else{ echo "读取的值=".$value;}//关闭$mem->close(); ?>
注:mem对象下还有许多方法,可以通过翻阅手册了解。
多个memcached服务器设置,其实就比一个memcached服务器改变一点点,就是把多个memcached的服务器通过方法addserver添加到连接池中,这样设置完后,crud操作时,内部就会通过相应算法均衡连接相应服务器并执行相应操作中。
<?phpheader ("Content-type:text/html;charset=utf-8");//创建Memcache对象$mem = new Memcache(); //添加多台memcached服务器$mem->addserver('192.168.0.1',11211); $mem->addserver('192.168.0.2',11211);$mem->addserver('192.168.0.3',11211);$mem->addserver('192.168.0.4',11211);//设置,'myword'参数代表键key,'hello world'代表存放的值,MEMCACHE_COMPRESSED代表压缩内容,50代表存放时间,单位秒if ($mem->set('myword','hello world',MEMCACHE_COMPRESSED,50)){ echo "设置值成功!";}//读取键myword值$value = $mem->get('myword');if(!$value){ echo "读取失败!";}else{ echo "读取的值=".$value;}?>
memcache的访问是无用户状态,安全性需要考虑,一般通过放在内网,并通过防火墙限制外网访问memcache端口来达到安全
通过修改php.ini,可以把session的值放入memcache服务器中
session.save_handler = files改成session.save_handler = memcached
session.save_path = "N;MODE;/path"改成 session.save_path = "tcp://127.0.0.1:11211"

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Bei der Webentwicklung müssen wir häufig Caching-Technologie verwenden, um die Leistung und Reaktionsgeschwindigkeit der Website zu verbessern. Memcache ist eine beliebte Caching-Technologie, die jeden Datentyp zwischenspeichern kann und hohe Parallelität und hohe Verfügbarkeit unterstützt. In diesem Artikel wird die Verwendung von Memcache in der PHP-Entwicklung vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Memcache installieren Um Memcache verwenden zu können, müssen wir zunächst die Memcache-Erweiterung auf dem Server installieren. Im CentOS-Betriebssystem können Sie den folgenden Befehl verwenden

Mit der Entwicklung des Internets haben PHP-Anwendungen immer mehr Einzug in den Bereich der Internetanwendungen gehalten. Allerdings kann ein hoher gleichzeitiger Zugriff durch PHP-Anwendungen zu einer hohen CPU-Auslastung auf dem Server führen und somit die Leistung der Anwendung beeinträchtigen. Um die Leistung von PHP-Anwendungen zu optimieren, ist die Caching-Technologie von Memcached eine gute Wahl. In diesem Artikel wird erläutert, wie Sie die Memcached-Caching-Technologie verwenden, um die CPU-Auslastung von PHP-Anwendungen zu optimieren. Einführung in die Memcached-Caching-Technologie Memcached ist ein

In der PHP-Entwicklung kann die Verwendung des Memcache-Caching-Systems die Effizienz beim Lesen und Schreiben von Daten erheblich verbessern. Memcache ist ein speicherbasiertes Caching-System, das Daten im Speicher zwischenspeichern kann, um häufiges Lesen und Schreiben der Datenbank zu vermeiden. In diesem Artikel wird die Verwendung von Memcache in PHP für effiziente Lese- und Schreibvorgänge für Daten vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Memcache installieren und konfigurieren Zuerst müssen Sie die Memcache-Erweiterung auf dem Server installieren. kann passieren

Wie verwende ich Memcache für effizientes Schreiben und Abfragen von Daten in der PHP-Entwicklung? Mit der kontinuierlichen Weiterentwicklung von Internetanwendungen werden die Anforderungen an die Systemleistung immer höher. In der PHP-Entwicklung verwenden wir häufig verschiedene Caching-Technologien, um die Systemleistung und Reaktionsgeschwindigkeit zu verbessern. Eine der am häufigsten verwendeten Caching-Technologien ist Memcache. Memcache ist ein leistungsstarkes verteiltes Speicherobjekt-Caching-System, das zum Zwischenspeichern von Datenbankabfrageergebnissen, Seitenfragmenten, Sitzungsdaten usw. verwendet werden kann. Durch das Speichern von Daten im Speicher

Da Webanwendungen immer komplexer werden, ist die Leistung zu einem kritischen Thema geworden. In vielen Anwendungen gehören Datenbankabfragen zu den zeitaufwändigsten Vorgängen. Um das häufige Lesen von Daten aus der Datenbank zu vermeiden, können Sie ein Caching-System verwenden, um häufig gelesene Daten für einen schnellen Zugriff im Speicher zu speichern. In der PHP-Entwicklung ist die Verwendung von Memcached für verteiltes Caching eine äußerst gängige Praxis. In diesem Artikel stellen wir vor, wie man Memcached für verteiltes Caching verwendet. Was ist Memca

Wie verwende ich Memcache, um Datenspeichervorgänge in Ihrer PHP-Anwendung zu optimieren? Bei der Entwicklung von Webanwendungen ist die Datenspeicherung ein entscheidendes Bindeglied. In PHP-Anwendungen kann Memcache als Speicher-Cache-System die Effizienz von Datenspeicher- und Lesevorgängen effektiv verbessern. In diesem Artikel wird die Verwendung von Memcache zur Optimierung von Datenspeichervorgängen in PHP-Anwendungen vorgestellt und spezifische Codebeispiele angehängt. Schritt 1: Installieren Sie die Memcache-Erweiterung. Zuerst müssen Sie Me in Ihrer PHP-Umgebung installieren

PHP ist eine sehr beliebte Programmiersprache, die häufig für die serverseitige Entwicklung von Webanwendungen verwendet wird. Da der Benutzerumfang von Webanwendungen weiter zunimmt und die Datenmenge weiter zunimmt, werden effiziente Daten-Caching- und Sortiervorgänge immer wichtiger. Memcache ist in dieser Situation ein sehr nützliches Tool. In diesem Artikel wird erläutert, wie Sie mit Memcache effiziente Zwischenspeicherungs- und Sortiervorgänge für Daten in der PHP-Entwicklung realisieren und spezifische Codebeispiele bereitstellen. Was ist Memcache? Memcache ist

Mit der Entwicklung des Internets spielt die Caching-Technologie eine immer wichtigere Rolle in der Webentwicklung. Redis und Memcached, zwei beliebte Cache-Server, werden häufig in der Entwicklung verschiedener Webanwendungen eingesetzt. Allerdings kann die Installation und Konfiguration dieser Cache-Server für Entwickler, die mit Linux-Systemen nicht vertraut sind, einige Probleme bereiten. Mit Hilfe von Pagoda Panel wird dieser Vorgang jedoch recht einfach. 1. Was ist eine Pagodentafel? Das Pagoda-Panel ist ein Linux-Serververwaltungspanel, das dies kann
