ホームページ バックエンド開発 PHPチュートリアル LaravelのRedisを使用してWebサイトのキャッシュ読み取りを実装する方法について

LaravelのRedisを使用してWebサイトのキャッシュ読み取りを実装する方法について

Jun 13, 2018 am 09:46 AM
laravel redis Redisキャッシュ 使用

この記事では、主に Redis を使用して Web サイトのキャッシュ読み取りを実装するための関連情報を紹介します。この記事では、学習や仕事に役立つ特定の学習価値があります。一緒に学びましょう。

redis の概要

Redis は完全にオープンソースで無料で、BSD プロトコルに準拠しており、高性能です。キーと値のデータベース。 Redis およびその他の Key-Value
キャッシュ製品には、次の 3 つの特徴があります。 Redis はデータの永続性をサポートしており、データをディスク上のメモリに保持し、再起動時に再ロードして使用できます。

Redis は、単純なキーと値の型のデータをサポートするだけでなく、リスト、セット、zset、ハッシュなどのデータ構造のストレージも提供します。

Redis はデータ バックアップ、つまりマスター/スレーブ モードでのデータ バックアップをサポートしています。

Redis の利点

  • 非常に高いパフォーマンス – Redis は 110,000 回/秒の速度で読み取ることができます書き込み速度は81000回/秒です。

  • 豊富なデータ型 – Redis は、バイナリの場合の文字列、リスト、ハッシュ、セット、および順序付きセットのデータ型操作をサポートします。

  • アトミック - Redis のすべての操作はアトミックであり、Redis は完全にマージされた後のいくつかの操作のアトミック実行もサポートします。

  • 豊富な機能 – Redis は、パブリッシュ/サブスクライブ、通知、キーの有効期限などの機能もサポートしています。

redis のインストール方法

1.Ubuntu (Homestead 環境の仮想マシンを使用しているため)は Ubuntu なので、インストールにはこの方法のみを使用しました)

公式 Ubuntu インストール方法

$sudo apt-get update
$sudo apt-get install redis-server
ログイン後にコピー

私の Web サイトのため、使用する laravel フレームワークは、composer メソッドを使用してインストールする必要があります。

composer require predis/predis
ログイン後にコピー

Lumen マイクロフレームワークをインストールする場合は、illuminate/redis (5.2.2.1) もインストールする必要があります。 *)

composer require illuminate/redis (5.2.*)
ログイン後にコピー

構成

ルーメンが取り付けられている場合

//需要在bootstrap/app.php里面加入此段代码
$app->register(Illuminate\Redis\RedisServiceProvider::class);
$app->configure('database');
ログイン後にコピー

#Redis はメインデータベースとして使用できるため、Laravel の Redis の構成情報は config/database.php にあります:

#
'redis' => [
'cluster' => false,
'default' => [
 'host' => '127.0.0.1',
 'port' => 6379,
 'database' => 0,
],
],
ログイン後にコピー

クラスター オプションは、複数の Redis ノード間でシャーディングを実行するかどうかを示します。ここでは 1 つのノードのみをローカルでテストするため、false に設定します。

デフォルト オプションは、デフォルトの Redis ホスト接続を示します。ここでは、Redis と Web サーバーがホストを共有するため、ホストは 127.0.0.1 で、Redis のデフォルト ポートは 6379 です。

さらに、デフォルト オプションでは、さらに多くの接続パラメータ (必要な場合) もサポートされています。

パラメータ意味hostポートパスワードdatabaseデータベース インデックスが選択されるときに選択されます。接続中#timeout5 秒read_write_timeoutネットワーク接続を介した読み取りおよび書き込み操作のタイムアウトread_write_timeout |ネットワーク接続を介した読み取りおよび書き込み操作のタイムアウト|システムのデフォルト (タイムアウトが制限されていない場合は -1 に設定されます)

デフォルト値
サーバーIPアドレス/ホスト名127.0.0.1
Redisサーバーリスニングポート番号6379
サーバーには認証パスワードが必要ですパスワードを使用しないでください

インデックスが設定されていません

Redis サーバーへの接続のタイムアウト

システムのデフォルト (タイムアウトは制限されていません)

さらに、Redis をキャッシュ ツールとして使用する場合は、config/cache.php で redis オプションを構成する必要もあります:

'redis' => [

'driver' => 'redis',
'connection' => 'default',
],
ログイン後にコピー

ここでの接続は、config/database Host のデフォルト設定のデフォルト Redis に対応します。

上記の構成を完了すると、アプリケーション コードでデータ アクセスに Redis を使用できるようになります。

例を見てください—Laravel の mysql は Redis とペアになっています

私のアイデアは、読み取り時に最初にキャッシュに移動するということです。見つけられたらラッキーです。見つからない場合は、データベースにアクセスして検索し、キャッシュに転送します。

 if (Cache::has($key)){    //首先查寻cache如果找到
  $values = Cache::get($>key); //直接读取cache
  return $values;
 }else{         //如果cache里面没有  
  $values = DB::select($sql);
  Cache::put($key,$value,$time);
  return $values;
 }
ログイン後にコピー

しかし、laravelのキャッシュには記憶機能も提供されています

 $values = Cache::remember($key,$time,function () {
   return DB::select($this->sql);
  });
ログイン後にコピー

キャッシュされている場合は、キャッシュ項目がキャッシュに存在しない場合は、remember メソッドに返されたクロージャが実行され、クロージャの結果がキャッシュに保存されます。

上記がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

Laravel フレームワークのルーティングとコントローラーのバインディング操作について


Laravel のライフサイクルについてフレームワークと原理分析


以上がLaravelのRedisを使用してWebサイトのキャッシュ読み取りを実装する方法についての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Centos7にRedisをインストールする方法 Centos7にRedisをインストールする方法 Apr 14, 2025 pm 08:21 PM

公式Redisソースからソースコードパッケージをダウンロードして、コンパイルしてインストールして、最新の安定したバージョンを確保し、パーソナライズされた方法でカスタマイズできます。特定の手順は次のとおりです。ソフトウェアパッケージリストを更新してRedisディレクトリを作成するRedisソースコードパッケージをダウンロードしてソースコードパッケージを解凍し、インストール構成をコンパイルし、Redis構成を変更してRedisの起動ステータスを確認します

スロークエリログを設定する方法Centos Redis スロークエリログを設定する方法Centos Redis Apr 14, 2025 pm 04:54 PM

CENTOSシステムのRedisスロークエリログを有効にして、パフォーマンスの診断効率を改善します。次の手順では、構成をガイドします。ステップ1:最初にRedis構成ファイルを見つけて編集し、通常は/etc/redis/redis.confにあるRedis構成ファイルを見つけます。次のコマンドで構成ファイルを開きます:sudovi/etc/redis/redis.confステップ2:構成ファイルでスロークエリログパラメーターを調整し、次のパラメーターを見つけて変更します:#slow query-log-log-slower-slower-than10000#スロークエリのエントリの最大数

Laravelの主な機能:バックエンド開発 Laravelの主な機能:バックエンド開発 Apr 15, 2025 am 12:14 AM

バックエンド開発におけるLaravelのコア機能には、ルーティングシステム、Eloquentorm、移行機能、キャッシュシステム、キューシステムが含まれます。 1.ルーティングシステムは、URLマッピングを簡素化し、コードの組織とメンテナンスを改善します。 2.Eloquentormは、開発効率を改善するためにオブジェクト指向のデータ操作を提供します。 3.移行関数は、バージョン制御を介してデータベース構造を管理して、一貫性を確保します。 4.キャッシュシステムは、データベースクエリを削減し、応答速度を向上させます。 5.キューシステムは、大規模なデータを効果的に処理し、ユーザー要求のブロックを避け、全体的なパフォーマンスを改善します。

Centosでgitlabデータベースを選択する方法 Centosでgitlabデータベースを選択する方法 Apr 14, 2025 pm 05:39 PM

CENTOSシステムにGitLabをインストールして構成する場合、データベースの選択が重要です。 gitlabは複数のデータベースと互換性がありますが、PostgreSQLとMySQL(またはMariaDB)が最も一般的に使用されています。この記事では、データベースの選択要因を分析し、詳細なインストールと構成の手順を提供します。データベース選択ガイドデータベースを選択する際には、次の要因を考慮する必要があります。PostGreSQL:GitLabのデフォルトデータベースは強力で、スケーラビリティが高く、複雑なクエリとトランザクション処理をサポートし、大規模なアプリケーションシナリオに適しています。 MySQL/MariadB:Webアプリケーションで広く使用されている人気のあるリレーショナルデータベース、安定した信頼性の高いパフォーマンスを備えています。 MongoDB:NOSQLデータベース、専門

Redis:データベースアプローチの分類 Redis:データベースアプローチの分類 Apr 15, 2025 am 12:06 AM

Redisのデータベースメソッドには、メモリ内データベースとキー価値ストレージが含まれます。 1)Redisはデータをメモリに保存し、速く読み取り、書き込みます。 2)キー価値のペアを使用してデータを保存し、キャッシュやNOSQLデータベースに適したリスト、コレクション、ハッシュテーブル、注文コレクションなどの複雑なデータ構造をサポートします。

Centos Redis構成でよくある質問 Centos Redis構成でよくある質問 Apr 14, 2025 pm 04:36 PM

CENTOSの下でRedis構成のトラブルシューティングRedisシステムにRedisを展開すると、さまざまな問題に遭遇する可能性があります。この記事では、いくつかの一般的な問題とそのソリューションをまとめて、Redis構成を正常に完了するのに役立ちます。 FAQとソリューションREDISコンピレーションとインストールの障害問題:Redisソースコードをコンパイルすると、低コンパイラバージョン、依存関係ライブラリの欠落、またはシステムリソースが不十分な状況に遭遇する可能性があります。解決策:GCCコンパイラをアップグレード:SudoyuminInstallCentos-Release-SCLとsudoyuminInstalldevtoolset-7を使用してから、sclenabledを実行します

Redisの構築方法 Redisの構築方法 Apr 15, 2025 am 07:42 AM

Dockerは、サービスのセキュリティ、携帯性、スケーラビリティを確保するためにRedisコンテナ化を実装するテクノロジーです。前提条件:DockerのインストールとRedis画像。手順:コマンドラインDocker実行を実行して、Redisコンテナを作成します。 Redisクライアントまたはコマンドラインを使用して、コンテナに接続します。コマンドラインを介してコンテナを起動/停止/再起動します。ログを表示するか、コンテナを削除します。

Centos Redis構成パスワードを設定する方法 Centos Redis構成パスワードを設定する方法 Apr 14, 2025 pm 05:06 PM

CentOSシステムのRedisのパスワードの設定は、構成ファイルを変更するか、コマンドラインを使用して一時的に設定することで実現できます。方法1:Redis.conf構成ファイルを変更して、Redis構成ファイルを見つけます。Redis構成ファイルは通常/etc/redis/redis.confにあります。構成ファイルを編集:テキストエディター(VIやNANOなど)を使用して構成ファイルを開きます:sudovi/etc/redis/redis.confパスワードを設定します。

See all articles