當前位置:首頁 » 編程語言 » phpmemcache擴展

phpmemcache擴展

發布時間: 2022-07-07 19:03:20

A. php 拓展 memcache 和 memcached 的區別

先從最本質上的區別,memcache是通過介面方式連接memcache(服務)提供的介面;memcached是通過系統的libmemcached庫提供的api與memcached服務端進行交互,更底層,功能更多,速度更快。而且,memcache是早期的擴展,memcached相對較新,更穩定,功能更多。

B. 請問給php安裝memcache的擴展庫php_memcache.dll,過程都對但是沒有效果,敬請指點!

1,首先看看memcache的版本是否是64位的,這個版本要和你的系統對應,系統是64位系統的話必須要裝64位,

2,PHP.ini文件里添加的不是extension=php_mysqli.dll
而是extension=php_memcache.dll
先去試試,不行的話追問,我之前安裝memcache的時候寫了個文檔,要是不成功我去找文檔給你

C. 如何在Centos的linux操作系統安裝php的memcache擴展

准備工作:
1、一台linux的伺服器

2、下載相應版本的php源碼,知道自己php的版本並且知道phpize的位置

3、懂基本的linux解壓命令和編譯
操作步驟:
1、通過ssh登陸到我們的伺服器,找到我們的phpize位置,如果不知道下載跟目前使用版本相同的php源碼重新編譯一下
2、下載memcached的源碼包,並解壓安裝

wgettar -zxvf memcache-3.0.8.tgz #解壓cd memcache-3.0.8 #進入源碼包/usr/local/php/bin/phpize #執行phpize./configure --with-php-config=/usr/local/php/php-config #准備編譯make && make install #編譯安裝

3、配置php.ini文件在最後面添加擴展進去

vim /etc/php.iniextension=memcache.so

4、重啟web伺服器,我用的是apache

service httpd restart

5、編寫一個phpinfo文件去查看有沒有安裝成功

D. php中memcache和memcached有什麼區別

PHP有兩個memcache客戶端:php memcache和php memcached。

memcache完全在PHP框架內開發的,提供了memcached的介面,memecached擴展是使用了libmemcached庫提供的api與memcached服務端進行交互。
memcache提供了面向過程及面向對象的介面,memached只支持面向對象的介面。
memcached 實現了更多的 memcached 協議。
memcached 支持 Binary Protocol,而 memcache 不支持,意味著 memcached 會有更高的性能。不過,還需要注意的是,memcached 目前還不支持長連接。

E. php擴展Memcache和Memcached的區別

這么和你說吧!區分開三種寫法來幫你理解。Memcached、memcached、memcache。其中首字母大寫的Memcached,指的是Memcached伺服器,就是獨立運行Memcached的後台伺服器,用於存儲數據的「資料庫」。而memcached和memcache指的是Memcached的客戶端

F. php 中的 memcache 是什麼 怎麼用的 越詳細越好,求大神 在線等

memcache 本身是一款分布式的高速緩存系統,以 key-value 的形式常駐內存,一般用來做網站或者資料庫的緩存使用。
特別是對以下場景非常適合用 memcache 來做緩存:
1. 頻繁訪問的數據2. 安全性要求比較低的數據
3. 更新比較頻繁的小表(用戶狀態表、物品庫存等)

G. Memcache的PHP擴展是什麼意思,有什麼作用

Memcache是分布式緩存系統是用來做數據存儲的 php要用memcache需要安裝一些對應的擴展否則不支持使用

H. php 能不能編譯的時候一起加入 memcached 擴展

一 安裝libevent

1.去官網http://libevent.org/ 下載最新源碼,我用的是libevent-2.0.20-stable.tar.gz

2.解壓到/usr/src目錄 ,執行命令:sudo tar -zxvf libevent-2.0.20-stable.tar.gz -C /usr/src

3.進入解壓以後的目錄,用sudo方式執行命令:sudo ./configure --prefix=/usr/local/libevent ; make ; make install

二 安裝memcache

1.去官網 http://memcached.org/ 下最新源碼,我用的是memcached-1.4.15.tar.gz

2.解壓到/usr/src目錄 ,執行命令:sudo tar -zxvf memcached-1.4.15.tar.gz -C /usr/src

3.進入解壓以後的目錄,用sudo方式執行命令:sudo ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent; make ; make install

三 安裝php的memcache擴展

有兩個版本一個是memcache(http://pecl.php.net/package/memcache ),另一個是基於libmemcached的memcached版本(http://pecl.php.net/package/memcached );

網上查的資料是說前一個是原生的,後一個比前一個功能更強大。比較推薦使用基於libmemcahced 庫的memcached擴展。支持memcache提供的CAS操作,穩定性和效率也更好。

這里我使用基於libmemcached 庫的memcached擴展,安裝步驟如下:

首先,安裝libmemcached庫

1.去網址 https://launchpad.net/libmemcached (或者http://libmemcached.org/libMemcached.html )下載源碼,

我用的是libmemcached-1.0.14.tar.gz

2.解壓縮到/usr/src目錄,用sudo方式執行命令:sudo tar -zxvf libmemcached-1.0.14.tar.gz -C /usr/src

3.進入目錄/usr/src/libmemcached-1.0.14/,sudo方式執行命令:./configure ;make;make install (不加--prefix=/usr/local/libmemcached 指定安裝目錄時,libmemcached 默認安裝在/usr/local/,頭文件安裝在/usr/local/include/libmemcachde/,動態庫默認安裝在/usr/local/lib/下。)

4.make時遇到問題:sorry, unimplemented: Graphite loop optimizations can only be used if the libcloog-ppl0 package is installed。解決辦法是修改Makefile,查找並去掉 floop-parallelize-all(應該有兩處需要去掉),看了網上資料說是去掉後表示不使用Graphite loop 優化。

5.再次make,遇到問題:fatal error: sasl/sasl.h: No such file or directory. 在網上搜到的解決辦法是:

Depending on your operating system, you'll need to install the cyrus-sasl development package.

That would be cyrus-sasl-devel on RedHat based distros and libsasl2-dev on Debian based distros IIRC.

我在ubuntu下直接用sudo apt-get install libsasl2-dev 安裝了。

6.編譯還是遇到問題,顯示無法鏈接到sasl的一些文件。問題顯示如下:

undefined reference to `sasl_client_step'
undefined reference to `sasl_dispose'
undefined reference to `sasl_client_start'
undefined reference to `sasl_client_new'

解決辦法是重新執行configure命令,增加相應的參數。sudo執行命令:sudo ./configure --enable-sasl --without-memcached LDFLAGS=-Wl,--as-neede ;make; make install

7.終於安裝libmemcached庫成功了。。。

其次,安裝memcached版本的php擴展

1. 去網址http://pecl.php.net/package/memcached 下載memcached版本,我用的是memcached-2.1.0.tgz

2. 解壓到/usr/src目錄 ,執行命令:sudo tar -zxvf memcached-2.1.0.tgz -C /usr/src

3. 進入解壓以後的目錄,是沒有configure文件的,用sudo方式執行命令來生成:sudo /usr/local/php/bin/phpize

4.遇到問題:Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script. 網上搜到的解決辦法為:

cd /usr/src
wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
tar -zvxf m4-1.4.9.tar.gz
cd m4-1.4.9/
./configure && make && make install
cd ../
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz
tar -zvxf autoconf-2.62.tar.gz
cd autoconf-2.62/
./configure && make && make install
5.這是再次執行sudo /usr/local/php/bin/phpize,就可以成功生成configure文件了。(phpize是用來擴展php擴展模塊的,通過phpize可以建立php的外掛模塊,官方說明網址為:http://php.net/manual/en/install.pecl.phpize.php)

6.用sudo方式執行命令./configure --with-php-config=/usr/local/php/bin/php-config; make ; make install

7.編譯完成了,還需要做的是在/usr/local/lib/php.ini文件中加入extension值:extension=memcache.so

8.重啟/usr/local/php/sbin/php-fpm程序使配置生效,但是報錯:

ERROR: failed to open configuration file '/usr/local/php/etc/php-fpm.conf': No such file or directory (2)

ERROR: failed to load configuration file '/usr/local/php/etc/php-fpm.conf'

ERROR: FPM initialization failed

解決辦法為: (1)cd /usr/local/php/etc/; (2)mv php-fpm.conf.default php-fpm.conf

9.重啟仍然出現問題:ERROR: [pool www] cannot get uid for user 'www'。解決辦法為:編輯文件vim /usr/local/php/etc/php-fpm.conf,

把user = nobody group = nobody 中的nobody修改成有效的用戶和用戶組名稱。

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:432
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:743
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:146
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:239
java駝峰 發布:2025-02-02 09:13:26 瀏覽:652
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726