PHP操作memcache
1. はじめに
memcache モジュールは、特に動的 Web プログラムの設計時にデータベース アクセスを削減するために、メモリ キャッシュ用の手続き型プログラムとオブジェクト指向の便利なインターフェイスを提供する効率的なデーモン プロセスです。
memcache は、通信会話 (session_handler) の処理も提供します。
Memcache モジュールの詳細については、http://www.danga.com/memcached/ を参照してください。
1.1. php.ini の memcache 設定項目のリスト名前 | デフォルト値 | 変数かどうか | 変更ログ |
memcache.allow_failover | 「1」 | PHP_INI_ALL | memcache 2.0.2 以降で利用可能 |
"20" | PHP_INI_ALL | memc ache 2.1.0 以降で利用可能. | |
"8192" | PHP_INI_ALL | memcache 2.0.2. | 以降で利用可能 |
"11211" | PHP_INI_ALL | memcache 2. 0.2. | 以降で利用可能 |
「標準」 | PHP_INI_ALL | memcache 2.2.0 以降で利用可能 | |
"crc32" | PHP_INI_ALL | memcache 2.2.0 以降で利用可能 | |
「ファイル」 | PHP_INI_ALL | サポートされていますmemcache 2.1.2 以降 | |
"" | PHP_INI_ALL | memcache 2.1.2 以降でサポート |
memcache.allow_failover Boolean
エラーが発生したときに他のサーバーに透過的にフェイルオーバーするかどうか (注: フェイルオーバーは動詞です)。memcache.max_failover_attempts integer
サーバー設定の数を定義し、データを取得します。memcache.allow_failover と組み合わせてのみ使用されます。
memcache.chunk_size integer
memcache.default_port string
memcache サーバーに接続するとき、ポートが指定されていない場合は、このデフォルトの TCP ポートが使用されます。
memcache.hash_strategy string
キーをサーバーにマッピングするときに使用する戦略を制御します。この値を一貫して設定すると、ハッシュ アルゴリズムを一貫して使用できるようになり、サーバーがプールへの変数の追加または削除を受け入れるときに再マッピングされなくなります。古い戦略を使用する場合は、この値を標準の結果に設定します。
memcache.hash_function string
サーバーへのキー マッピング プロセスにどの hsah 関数が適用されるかを制御します。デフォルト値「crc32」は CRC32 アルゴリズムを使用し、「fnv」は FNV-1a アルゴリズムの使用を示します。
session.save_handler string
この値を memcache に設定することで、通信会話処理 (セッション ハンドラー) に memcache を使用するかどうかを決定します。
session.save_path string
通話ストレージに使用される各サーバー リンクの区切り記号を定義します (例: "tcp://host1:11211, tcp://host2:11211")。
各サーバー リンクには、Memcache::addServer() を使用してサーバーを追加するのと同様に、サーバーによって受け入れられるパラメーターを含めることができます。例: "tcp://host1:11211?persistent=1&weight=1&timeout=1& retry_interval=15 」。
1.3. memcache 定数リスト
memcache 定数リスト名前
説明 | MEMCACHE_COMPRESSED | |
Memcache::set( を使用するときに調整するために使用) )、::add()、および Memcache: :いくつかの関数の replace() 圧縮率。 | MEMCACHE_HAVE_SESSION | |
通信セッション ハンドラーがその値の使用を許可されている場合は 1、それ以外の場合は値は 0 です。 | 2Memcache 関数の関数一覧 2.1.Memcache::connect2.1.1. 説明
bool Memcache :: connect ( string $host [ , int $port [ , int $timeout ]] ) memcache サーバーに接続します 2.1.2.パラメータ$host(string) サーバーのドメイン名または IP $port(int) サーバーの TCP ポート番号、デフォルト値は 11211 です $timeout 接続 memcache プロセスの有効期限。デフォルト値の変更する前によく考えてください。避けるべき 1 memcache キャッシュの利点がすべて失われ、接続が非常に遅くなります。 2.1.3. 戻り値成功した場合は true を返し、失敗した場合は false を返します 2.1.4. 例
/* 手続き型 API */
array Memcache :: getStats ([ string $type [ , int $slabid [ , int $limit ]]] ) 获取最后添加服务器静态信息 2.12.2.参数type 静态信息类型,有效值包括{reset, malloc, maps, cachedump, slabs, items, sizes},依照一定规则协议这个可选参数是为了方便开发人员查看不同类别的信息而输入的标题 slabid 用于按指定类型联合设置 cache 堆为有效的片到堆中。缓存堆被被命令绑定到服务器上并被严格的用于调试用途 limit 用于按指定类型联合设置 cache 堆为输入的数字所限制的大小到堆,默认值为 100 2.12.3.返回值返回一个服务器静态信息数组,失败时返回 FALSE 2.13.Memcache::getServerStatus2.13.1.说明
int Memcache :: getServerStatus ( string $host [ , int $port ] ) 通过输入的 host 及 port 来获取相应的服务器信息 2.13.2.参数host 服务器域名或 IP port 端口号,默认为 11211 2.13.3.返回值返回服务器状态,0 为失败,其他情况返回非 0 数字 2.13.4. 例& & lt ;? PHP / * OO API * / サーバーのバージョン番号情報を取得します 2.14.2. 戻り値 成功した場合はサーバーのバージョン番号文字列を返し、失敗した場合は FALSE を返します2.14.3. php /* OO API */ $memcache = new Memcache; $memcache -> getVersion();$memcache = memcache_connect('memcache_host' , 11211 ); echo memcache_get_version( $memcache );コードをコピー
2.15.Mem cache::setCompressThreshold 2.15.3。 戻り値 成功した場合は TRUE、失敗した場合は FALSE を返します。 2.15.4. 例
php /* OO API */ $memcache_obj -> addServer('memcache_host' , 11211 ); setCompressThreshold( 20000 , 0.2 );/* 手続き型 API */ $memcache_connect('memcache_host' , 11211 );memcache_set_compress_threshold( $memcache_obj , 20000 , 0.2 ); ; コードをコピー 2.16.Memcache :: setServerParams2.16.1. 説明 bool Memcache :: setServerParams ( string $host [ , int $port [ , int $timeout [ , int $retry_interval [ , bool $status [ , callback $failure_callback ]]]] ) codeコード後に追加されたコード 成功した場合は TRUE を返し、失敗した場合は FALSE を返します。 2.16.4.范の例
php 复制代 2.17.Memcache::increment2.17.1.说明
int Memcache :: increment ( string $key [ , int $value ] ) 给指定キーの存在1 つの増加値、その量がそうでない場合数字は数字に変換されず、この増加値はその変化量に加えられるため、新しい変化量は存在せず、圧縮保存された量に対しては、対応する取得方法が失われるため、この関数を使用する必要はありません。 2.17.2. パラメータkey が保存する鍵 var 値、整型は直接保存され、その他の型は順序化されて保存されます 2.17.3. 値を返す成功した場合は新しい値を返し、失敗した場合は FALSE を返します。 2.17.4.范の例
php 复制代 2.18.Memcache::decrement2.18.2.说明
int Memcache :: decrement ( string $key [ , int $value ] ) 给指定キー増分操作による保存量同様に、この値は数値に変換された後に減算され、新しい値は 0 より小さくならず、圧縮保存された量に対してこの関数を対応する値として使用する必要はありません。 2.18.2. パラメータkey が保存する鍵 var 値、整型は直接保存され、その他の型は順序化されて保存されます 2.18.3. 値を返す正常に新しい量を返す、失敗FALSE を返します。 2.18.4.例
php 复制代码 2.19.memcache_debug2.19.1.说明
bool memcache_debug ( bool $on_off ) memcache の設定が正しいかどうかPHP のインストール時に使用されているかどうかの影響を受ける -- 値は TRUE または FALSE です。 2.19.2.パラメータon_off は、評価モードが開始されているかどうかを設定します。TRUE は開始され、FALSE は停止します。返還 php のインストール時に --enable-debug を使用した場合は TRUE が返され、そうでない場合は FALSE が返されます。 |

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

PHP開発における固体原理の適用には、次のものが含まれます。1。単一責任原則(SRP):各クラスは1つの機能のみを担当します。 2。オープンおよびクローズ原理(OCP):変更は、変更ではなく拡張によって達成されます。 3。Lischの代替原則(LSP):サブクラスは、プログラムの精度に影響を与えることなく、基本クラスを置き換えることができます。 4。インターフェイス分離原理(ISP):依存関係や未使用の方法を避けるために、細粒インターフェイスを使用します。 5。依存関係の反転原理(DIP):高レベルのモジュールと低レベルのモジュールは抽象化に依存し、依存関係噴射を通じて実装されます。

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

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。

記事では、入力検証、認証、定期的な更新など、脆弱性から保護するためのフレームワークの重要なセキュリティ機能について説明します。

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。
