ホームページ php教程 php手册 [原创] linux 下的 memcached 开发

[原创] linux 下的 memcached 开发

Jun 13, 2016 am 09:42 AM
linux memcached 会社 近日公開 オリジナル 開発する これ

PS: 俺快给公司开了.因为公司即将倒闭.

memcached  这个东西是个十分好的东西.做为PHPer不懂用的话如果挤身于php高手之列呢.所以有此一章

在自己的LINUX 下配置好了 memcached   , 按照网上的配置访问问题都不大.网上的memcached的安装教程都挺正确的.

不过按照自己的环境要注意几点.

第一就是在安装 memcached 之前 必须先编译安装好  libevent  包.   这个有下.自己百度

第二就是  编译  libevent 包的时候记得是   ./configure --prefix=/usr         编译到   /usr 目录.

因为usr 目录下有个lib 目录.里面全都是  xx.so   xx.so.1  之类的LIB库.     

装完了libevent  以后  再开始 安装 memcached  .

装 memcached 也要注意.网上讲的也不是很好.

网上讲的是改php.ini 的 extension dir 地址.    其实只要我们在   编译生成  memcached.so 以后.放我们设置好的存放so的目录下就行了.

以上几点是我在安装时候的得到的.  自己看着办吧. 其实安装挺简单的.


然后就是使用 memcached 了.     使用memcached  有两种办法.第一种就是用pecl 包 的 memcached 模块.    不过这办法要编译.   第二种是使用 memcached-client .php 文件.  这个速度上当然不够好了.所以我选择了第一种方法.

使用memcached  其实挺简单的.不过也是看你使用的具体环境了.也有可能是复杂的.

现在我就一个一个对  pecl 的memcached 里面的方法 一个一个试.呵呵. 反正俺快没工作了.时间多......

1
Memcache::add    方法

这个方法就是在    往内存里面添加变量  挺爽看例子

 

如果变量已经存在内存中.那么就会返回 false  .  我只给出基本招式.自己灵活运用了.


Memcached:: set  方法

设置 变量在内存中的值

有参数 同   Memcached:: add  一样

1  为   变量在内存中的标志   2  为  变量的值    3为是否压缩标志   4为 变量在内存中的存活秒数

看例子吧.   昏  上不了图..太大.只能手写了

$mem = new Memcache;
$mem->connect('localhost',11211) or die("not connect");
!$mem->set('mykey','good job'') && die("not input memory");
echo($mem->get('mykey')); //没压缩前

!$mem->set('mykey','good job',MEMCACHE_COMPRESSED,50) && die("not input memory");
echo($mem->get('mykey')); // 压缩和设置了变量在内存中的存活时间
?>
压缩是否有用.如果我们把一个占字节大的变量存放在内存.当然压缩后占内存小拉.

?>

3   
Memcached :: get  方法

这个方法看名字就知道 是从内存中获取 变量 ,前面我们存过变量进去的嘛还记得吧.呵呵

使用方法很简单
看:
$mem=new Memcache;
$mem->connect('localhost',11211) or die("not connect");
if(!$mem->get('kesdy')){
    echo 'xx';
}

?>
如果要获取的变量之前没存过到内存或是已经过期.那么会返回空.

4
Memcache::connect  这个方法不用讲了吧.  看上面的所有例子都有用到.
第一个参数是:   memcache 服务器的IP地址..第二个参数是: memcache 的监听端口.  默认是11211

Memcache::pconnect   这个也不用说了吧 .. 呵呵    长连接
5  
Memcache :: replace()  方法

这个方法看名字就知道.是替换在内存中已存在的变量的值和参数等.

如果 变量在内存中已经存在 但我们想改变他的值最好就不要用 Memcache :: set () 方法.   在这种情况来说效率上  replace() 效率更快更好


上菜

$mem = new Memcache;
$mem->connect('localhost',11211);
$mem->set('mykey','xxeedd');
$mem->replace('mykey','dddddddddddddd');
echo($mem->get('mykey'));
?>

上面是输出   ddddddddddddddddddddd

可以看出  给替换了吧.呵呵

6   

Memcache::increment 方法

这个是对  内存变量的值为 数值的有效.  

$mem = new Memcache;
$mem->connect('localhost',11211);
$mem->set('mykey',5);
$mem->increment('mykey',2);  //这样的话   mykey  的值就自动加了 2  成了 7    
echo($mem->get('mykey'));
?>


Memcache::decrement 方法   和他刚好相反.


7  Memcache:: delete()  方法

这个方法是手动删除一个在内存中的变量.

$mem = new Memcache;
$mem->connect('localhost',11211);
$mem->set('mykey',5);
$mem->delete('mykey'); //删除,还可以带个参数是  在多少秒后进行删除.    $mem->delete('mykey',50);
echo($mem->get('mykey'));
?>

够简单的了.自己看下

8

Memcache :: flush()  

使存在内存中的所有变量全部失效.

用法也很简单.

$mem = new Memcache;
$mem->connect('localhost',11211);
$mem->set('mykey',5);
$mem->flush();
?>



恩基本讲完了.懂用这几个 东西.  memcached  基本也就那样了..

下面我试下  memcached  多进程 和集群下的效果如何.

以后再做讲解了..... memcached和mysql简单综合应用.rar(8.51 KB)

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Deepseek Webバージョンの入り口Deepseek公式ウェブサイトの入り口 Deepseek Webバージョンの入り口Deepseek公式ウェブサイトの入り口 Feb 19, 2025 pm 04:54 PM

DeepSeekは、Webバージョンと公式Webサイトの2つのアクセス方法を提供する強力なインテリジェント検索および分析ツールです。 Webバージョンは便利で効率的であり、公式ウェブサイトは包括的な製品情報、ダウンロードリソース、サポートサービスを提供できます。個人であろうと企業ユーザーであろうと、DeepSeekを通じて大規模なデータを簡単に取得および分析して、仕事の効率を向上させ、意思決定を支援し、イノベーションを促進することができます。

DeepSeekをインストールする方法 DeepSeekをインストールする方法 Feb 19, 2025 pm 05:48 PM

DeepSeekをインストールするには、Dockerコンテナ(最も便利な場合は、互換性について心配する必要はありません)を使用して、事前コンパイルパッケージ(Windowsユーザー向け)を使用してソースからコンパイル(経験豊富な開発者向け)を含む多くの方法があります。公式文書は慎重に文書化され、不必要なトラブルを避けるために完全に準備します。

LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? Apr 01, 2025 pm 05:09 PM

LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

Bitget公式ウェブサイトのインストール(2025初心者ガイド) Bitget公式ウェブサイトのインストール(2025初心者ガイド) Feb 21, 2025 pm 08:42 PM

Bitgetは、スポット取引、契約取引、デリバティブなど、さまざまな取引サービスを提供する暗号通貨交換です。 2018年に設立されたこのExchangeは、シンガポールに本社を置き、安全で信頼性の高い取引プラットフォームをユーザーに提供することに取り組んでいます。 Bitgetは、BTC/USDT、ETH/USDT、XRP/USDTなど、さまざまな取引ペアを提供しています。さらに、この取引所はセキュリティと流動性について評判があり、プレミアム注文タイプ、レバレッジド取引、24時間年中無休のカスタマーサポートなど、さまざまな機能を提供します。

gate.ioインストールパッケージを無料で入手してください gate.ioインストールパッケージを無料で入手してください Feb 21, 2025 pm 08:21 PM

Gate.ioは、インストールパッケージをダウンロードしてデバイスにインストールすることで使用できる人気のある暗号通貨交換です。インストールパッケージを取得する手順は次のとおりです。Gate.ioの公式Webサイトにアクセスし、「ダウンロード」をクリックし、対応するオペレーティングシステム(Windows、Mac、またはLinux)を選択し、インストールパッケージをコンピューターにダウンロードします。スムーズなインストールを確保するために、インストール中に一時的にウイルス対策ソフトウェアまたはファイアウォールを一時的に無効にすることをお勧めします。完了後、ユーザーはGATE.IOアカウントを作成して使用を開始する必要があります。

OUYI OKXインストールパッケージが直接含まれています OUYI OKXインストールパッケージが直接含まれています Feb 21, 2025 pm 08:00 PM

世界をリードするデジタル資産交換であるOuyi Okxは、安全で便利な取引体験を提供するために、公式のインストールパッケージを開始しました。 OUYIのOKXインストールパッケージは、ブラウザに直接インストールでき、ユーザー向けの安定した効率的な取引プラットフォームを作成できます。インストールプロセスは、簡単で理解しやすいです。

システムの再起動後にUnixSocketの権限を自動的に設定する方法は? システムの再起動後にUnixSocketの権限を自動的に設定する方法は? Mar 31, 2025 pm 11:54 PM

システムが再起動した後、UnixSocketの権限を自動的に設定する方法。システムが再起動するたびに、UnixSocketの許可を変更するために次のコマンドを実行する必要があります:sudo ...

OUYI Exchangeダウンロード公式ポータル OUYI Exchangeダウンロード公式ポータル Feb 21, 2025 pm 07:51 PM

OKXとしても知られるOUYIは、世界をリードする暗号通貨取引プラットフォームです。この記事では、OUYIの公式インストールパッケージのダウンロードポータルを提供します。これにより、ユーザーはさまざまなデバイスにOUYIクライアントをインストールすることが容易になります。このインストールパッケージは、Windows、Mac、Android、およびiOSシステムをサポートします。インストールが完了した後、ユーザーはOUYIアカウントに登録またはログインし、暗号通貨の取引を開始し、プラットフォームが提供するその他のサービスを楽しむことができます。

See all articles