目次
ディスカッションに返信(解決策)
ホームページ バックエンド開発 PHPチュートリアル データクエリはmemcacheキャッシュとSQLで作成されたキー値を使用します。ページングデータは変更されません。

データクエリはmemcacheキャッシュとSQLで作成されたキー値を使用します。ページングデータは変更されません。

Jun 23, 2016 pm 01:38 PM

データクエリはmemcacheキャッシュを使用し、SQLによって作成されたキー値を使用し、データがない場合はSQLが変更され、再クエリされ、キャッシュされます。ローカルでは問題ありませんでしたが、今後、どのようなパラメータを渡しても、それに応じてSQLが変更されますが、変更されたキー値に基づいて取得されるデータリストは変更されません。考えられる理由を教えてください


ディスカッションに返信(解決策)

どのように????
文字列を検索する場合は検索できませんので、次のコードを確認してください。
自分で追加したかどうかを確認してください。

ページングのないサーバー データは少数しかありませんか?その結果、各ページのデータは同じになります。 。

キーコードを投稿してください。

え?
文字列を検索する場合は検索できませんので、次のコードを確認してください。
これらを自分で追加するかどうかを確認してください。

最初にサーバーにアップロードしたときは、クエリ SQL 全体をキー値として使用し、ページの重複はありませんでした。しばらく実行した後、重複を発見しました。 SQL 全体がキー値として使用されたことが原因である可能性があります。キー値が長すぎるため、今後 md5($sql) がキー値として渡されると、データの読み取りに影響します。キー値が長すぎますか?

キーコードを投稿してください。


$sql = "select id,avg_point,name,xpoint,ypoint,agent_area_id,area_id,supplier_id,index_img,dp_count,avg_point,deal_cate_id,ratio,area_id,note from aa  where 1 = 1 and is_effect=1 and city_id in (18,1) order by id DESC limit 0,15"; $key =  $GLOBALS['append_config']['IOS_CACHE_PRE'].$sql;    $info = mcache_get($key); if(!$info){    $info = $GLOBALS['db']->getAll($sql);    mcache_set($key,$info); }
ログイン後にコピー
各クエリの条件に応じて生成される SQL は異なりますが、SQL が異なる限り、毎回キー値としての SQL が異なっていても、データは再取得されます。再取得されていません

$sql md5 を置くだけですか?
memcache キーにはある程度の制限があります。

$sql = "select id,avg_point,name,xpoint,ypoint,agent_area_id,area_id,supplier_id,index_img,dp_count,avg_point,deal_cate_id,ratio,area_id,note (1 = 1、is_effect=1、city_id in aa) 18,1) ID による順序 DESC 制限 0,15";
$key = md5($GLOBALS['append_config']['IOS_CACHE_PRE'].$sql);
$info = mcache_get($key);
if( !$info){
$info = $GLOBALS['db']->getAll($sql);
mcache_set($key,$info)
}

含まれていないサーバー データはいくつかありますか?ページング、ああ?その結果、各ページのデータは同じになります。 。

大量のデータをページングする必要があります

キー
----

memcached によって保存されたデータは、キーを使用して識別されます
キー
は、クライアント
のデータを一意に識別する必要があるテキスト文字列です。現在、キーの
の長さ制限は 250 文字に設定されています (もちろん、通常、クライアントはそのような長いキーを使用する必要はありません)。キーには
制御文字や空白を含めることはできません。
Baidu 翻訳:
memcached に保存されたデータはキー値によって識別されます。キー
は、保存および取得の対象となる顧客データ
を一意に識別する必要があるテキスト文字列です。現在、
キーの長さの制限は 250 文字です (もちろん、通常、
クライアントは長いキーを使用する必要はありません)。キーには
制御文字やスペースを含めることはできません。

明らかにルールに違反しています

ls は、SQL ステートメントの長さは約 220 文字ですが、memcached の最大文字制限を超えていないことを明確に示しました。ただし、SQL にはスペースが含まれているため、SQL の最初のスペースより前の部分が実際にはキーとして使用されます。この場合、明らかにすべてのページ分割されたデータは同じです。

MD5 から始めましょう。

皆さん、熱心なご回答ありがとうございました

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

PHPのカール:REST APIでPHPカール拡張機能を使用する方法 PHPのカール:REST APIでPHPカール拡張機能を使用する方法 Mar 14, 2025 am 11:42 AM

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Codecanyonで12の最高のPHPチャットスクリプト Codecanyonで12の最高のPHPチャットスクリプト Mar 13, 2025 pm 12:08 PM

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

PHPにおける後期静的結合の概念を説明します。 PHPにおける後期静的結合の概念を説明します。 Mar 21, 2025 pm 01:33 PM

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

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

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

フレームワークセキュリティ機能:脆弱性から保護します。 フレームワークセキュリティ機能:脆弱性から保護します。 Mar 28, 2025 pm 05:11 PM

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

フレームワークのカスタマイズ/拡張:カスタム機能を追加する方法。 フレームワークのカスタマイズ/拡張:カスタム機能を追加する方法。 Mar 28, 2025 pm 05:12 PM

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

PHPのCurlライブラリを使用してJSONデータを含むPOSTリクエストを送信する方法は? PHPのCurlライブラリを使用してJSONデータを含むPOSTリクエストを送信する方法は? Apr 01, 2025 pm 03:12 PM

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

See all articles