クイックデータストレージ用のRedisとPHPの使用開始

人気のあるRedisストレージエンジンは、あらゆるソフトウェア開発者の武器に欠かせない優れたツールです。インメモリストレージエンジンは、1秒あたり最大3,200万回のクエリまで、非常に高速なデータの保存と取得を可能にし、主要なデータベースエンジンを補完するものになります。

飛び込んで、オンライン操作をスピードアップする方法を学びましょう。

Redis:長所と短所

Redisの最大の利点は、純粋にメモリ内のデータストアであるということです。つまり、データベースがRAM内に格納されるため、非常に高速であるため、ハードドライブへのファイルI / O操作は必要ありません。

その他の追加の利点は、そのシンプルさ、Redisクラスターを介したクラスタリングのサポート、および必要に応じてデータを保存および管理するために必要な柔軟性を提供する8つの異なるデータ型のサポートです。

ただし、最大の欠点は、純粋にメモリ内のデータストアであるため、サイズに制限があることです。サーバーインフラストラクチャによって異なりますが、この記事と簡潔さのために、通常のRedisデータベースは最大2〜4GBのデータしか保持しません。

つまり、Redisは、mySQL、PostgreSQL、MongoDBなどの一般的に使用されているデータベースエンジンを補完するために使用されており、代替として使用されるものではありません。Redisの主な用途には、キャッシュ、短期間に期限切れになる一時/最近のデータ、または頻繁にアクセスされる小さなデータが含まれます。

Redisのインストール方法

Ubuntuまたはapt-getコマンドを含むLinuxディストリビューションを実行していると仮定すると、Redisをインストールするには、ターミナルで次のコマンドを実行するだけです。

sudo apt-get install redis-server

次に、Redisが正常にインストールされていることを確認します。ターミナル内で、次のコマンドを実行します。

redis-cli --version

これにより、実行しているRedisのバージョンが出力されます。その場合は、次のコマンドを実行してRedisに接続します。

redis-cli

これにより、ターミナル内に非標準のRedisプロンプトが表示されます。これは次のようになります。

127.0.0.1:6379>

文字列コマンド

Redisへのすべてのエントリは、キーで識別されます。キーは、空白以外の任意の文字列にすることができます。文字列には単一の値のみが含まれます。たとえば、Redisプロンプトで次のコマンドを実行して、値をいくつかのキーに設定します。

127.0.0.1:6379> set full_name "John Doe" 127.0.0.1:6379> set units 5

これで、keysコマンドを使用して、現在Redisデータベース内にあるすべてのキーを一覧表示できます。

127.0.0.1:6379> keys *

これにより、以前に設定した2つのキー、full_name とunitsが表示されます。これらのキーの値は、getコマンドで確認できます。

127.0.0.1:6379> get full_name "John Doe" 127.0.0.1:6379> get units 5

キーの削除は、delコマンドを使用して簡単に実行できます。

127.0.0.1:6379> del full_name

hincrbyコマンドを使用して整数をすばやくインクリメントすることもできます。以下は、「units」キーを5から7にインクリメントします。

127.0.0.1:6379> incrby units 2

リストコマンド

Redisのリストは、特定の順序の1次元配列であり、リストの異なる位置でアイテムを複製できます。アイテムは、lpushおよびrpushコマンドを使用してリストの左側または右側に追加できます。

127.0.0.1:6379> lpush colors blue 127.0.0.1:6379> rpush colors red yellow green

上記の例からわかるように、1つのコマンド内で複数のアイテムをリストにプッシュできます。これで、lrangeコマンドを使用して、リスト内のすべてのアイテムを表示できます。

127.0.0.1:6379> lrange colors 0 -1

コマンドの最後には2つの整数があります。1つ目はリスト内の開始位置を定義し、2つ目は返される項目の数です。-1はすべての項目を意味します。上記のコマンドの結果は、青、赤、黄、緑になります。

lpopおよびrpopコマンドを使用して、リストの両端からアイテムを削除することもできます。

127.0.0.1:6379> lpop colors blue 127.0.0.1:6379> rpop colors green

llenコマンドを使用して、リスト内の要素の数を取得することもできます。

127.0.0.1:6379> llen colors (integer) 2

最後に、lremコマンドを使用してリストから要素を削除できます。

127.0.0.1:6379> lrem colors 1 green (integer) 1

lremのコマンドを削除するには出現回数が続き、リスト名で始まり、要素の名前は削除します。見つかってリストから削除されたオカレンスの数を返します。

ハッシュコマンド

Redisで最も人気のあるデータ型の1つはハッシュです。これにより、1つのエントリ内に複数のキーと値のペアを格納できます。キーはまだ存在している必要はなく、hsetコマンドを使用していつでもキーと値のペアを定義できます。

127.0.0.1:6379> hset user:581 full_name "Jane Doe" 127.0.0.1:6379> hset user:581 points 500

hmsetコマンドを使用して、1つのコマンド内でハッシュの複数のキーと値のペアを定義することもできます。

127.0.0.1:6379> hmset user:581 email [email protected] gender F

キーuser:581によって識別されたハッシュには、合計4つのキーと値のペアがあり、これらはすべてhgetallコマンドで簡単に取得できます。

127.0.0.1:6379> hgetall user:581 1) "full_name" 2) "Jane Doe" 3) "points" 4) "500" 5) "email" 6) "[email protected]" 7) "gender" 8) "F"

getコマンドを使用して、ハッシュ内の単一のキーと値のペアの値を取得することもできます。

127.0.0.1:6379> hget user:581 email "[email protected]"

ハッシュ内の整数については、codehincrbyコマンドを使用して指定した量だけ増分できます。

127.0.0.1:6379> hincrby user:581 points 20 (integer) 520

ハッシュ内のポイントキーの値が20から520に増加しました。ハッシュ内の単一のキーと値のペアは、hdelコマンドで削除できます。

127.0.0.1:6379> hdel user:581 gender

または、delコマンドを使用して、すべてのキーと値のペアを含むハッシュを完全に削除することもできます。

127.0.0.1:6379> del user:581

Redisキーの有効期限が切れています

Redisのもう1つの優れた機能は、expireコマンドを使用して、定義された秒数後にキーを自動的に期限切れにする機能です。リストまたはハッシュ内の単一の要素ではなく、完全なキーのみを期限切れにすることができることに注意してください。例えば:

127.0.0.1:6379> expire full_name 10

これにより、文字列セクションで作成したfull_nameキーに10秒の有効期限が設定されます。上記のコマンドを実行した後、10秒間待ってから、キーの値の取得を再試行してください。

127.0.0.1:6379> get full_name (nil)

予想どおり、キーの有効期限が切れたため、結果としてnullになります。

PHPでRedisに接続する

Redisを使用してデータを保存および取得する方法の基本を学習したので、次にデータをソフトウェアに接続します。すべてのプログラミング言語にはRedis用のモジュール/拡張機能がありますが、この例ではPHPを使用します。

デフォルトではインストールされないため、最初にPHP-Redis拡張機能をインストールする必要があります。ターミナル内で、コマンドを実行します。

sudo apt-get install php-redis

インストールしたら、拡張機能が正しくロードされるように、必ずPHP-fpmを再起動してください。これは、Redisに接続してインターフェースをとるPHPコードです。

<> // Connect to redis $conn = new redis(); try { $conn->connect('127.0.0.1', 6379, 5); } catch (RedisException $e) { die("Unable to connect to redis"); } // Set string $conn->set('country', 'Canada'); // Get string $value = $conn->get('country'); echo "Country is: $value "; // Define a profile $profile = [ 'username' => 'mike', 'full_name' => 'Mike Smith', 'email' => '[email protected]', 'country' => 'Australia' ]; // Create a hash $conn->hmset('user:188', $profile); // Get all values of the profile hash $values = $conn->hgetall('user:188'); print_r($values); // Get only the e-mail address $email = $conn->hget('user:188', 'email'); echo "E-mail is: $email "; // Expire the hash in 15 seconds $conn->expire('user:188', 15);

上記のサンプルコードは非常に単純なはずです。最初に5秒のタイムアウトでRedisに接続し、次に文字列とハッシュの設定と取得に進みます。上記の例のように、すべてのRedisコマンドは、Redisオブジェクトから直接呼び出すことでOOPを介して実行できます。

あなたはあなたの道を進んでいます!

おめでとうございます。PHPを使用してRedisに接続し、インターフェースをとる方法など、Redisストレージエンジンを介して驚異的な速度でデータを保存および取得する方法の基本を学びました。

この記事は非常に基本的なことだけをカバーしていることに注意してください。ドキュメントのRedisデータ型ページは、Redisとそのすべての機能を引き続き探索するのに最適な場所です。


Linuxを使い始めるための9つの基本コマンド

Linuxを使い始めるための9つの基本コマンド

Linuxのハウツーガイドでは、ターミナルで特定の操作を実行することを期待していることがよくありますが、これは最初は恐ろしいように思えます。しかし、心配する必要はありません。このLinuxコマンドのチートシートでは、ターミナルを開いていくつかの便利なコマンドを発行するプロセスについて説明します。

ArchLinuxでパッケージをインストールおよび削除する方法

ArchLinuxでパッケージをインストールおよび削除する方法

Arch Linuxにパッケージをインストールしたいのですが、方法がわかりませんか?多くの人は、DebianベースのディストリビューションからArchに最初に移行するときにこの問題に直面します。ただし、パッケージマネージャーを使用して、Archベースのシステムでパッケージを簡単に管理できます。

Linux用の10の最高のビデオ会議アプリ

Linux用の10の最高のビデオ会議アプリ

自宅で定期的に仕事をしているフリーランサーや従業員にとって、リモートコミュニケーションは世話をする必要がある多くのことの1つです。ビデオ会議は、今では私たちの多くの社内会議に取って代わりました。ZoomやSkypeなどのツールは大幅に成長しています。

Chromebookにコピーして貼り付ける方法

Chromebookにコピーして貼り付ける方法

Chromebookに切り替えるときに最初に不思議に思うかもしれないのは、基本的なこと、つまり以前のOSで手の甲にあったようなことをどのように行うかです。コピーと貼り付けは、ある時点で使用しなければならない基本的な機能の1つです。

DebianベースのLinuxディストリビューションベスト10

DebianベースのLinuxディストリビューションベスト10

標準のDebianとその人気のある派生Ubuntuは、Linuxシステムにとって優れた万能の選択肢ですが、より専門的なニーズがある場合は、Debianの代替手段が必要になる場合があります。

DistroTestを使用してインストールせずにLinuxディストリビューションをテストする方法

DistroTestを使用してインストールせずにLinuxディストリビューションをテストする方法

インストールせずにシステムでLinuxディストリビューションを試してみませんか?Linuxベースのオペレーティングシステムをインターネットブラウザで実行できるようにするいくつかのWebサイトがインターネット上で利用可能です。

安定版と最先端のLinuxディストリビューション:どちらを選択する必要がありますか?

安定版と最先端のLinuxディストリビューション:どちらを選択する必要がありますか?

Linuxディストリビューションを選択するときに多くのLinuxユーザーが直面する主な選択の1つは、その安定性、つまりソフトウェアの変更量です。

Alienを使用してLinuxパッケージ間で変換する方法

Alienを使用してLinuxパッケージ間で変換する方法

Linuxパッケージを他の形式に変換しますか?おそらく、探しているパッケージはディストリビューションで利用できませんが、それでも何があっても必要です。または、開発者であり、パッケージを再度ビルドすることなく、プログラムを他の形式にすばやく再パッケージ化することで時間を節約したい場合もあります。

Linuxでファイルとディレクトリを簡単に暗号化および復号化する方法

Linuxでファイルとディレクトリを簡単に暗号化および復号化する方法

新しいソフトウェアパッケージをインストールして学習することなく、Linuxでファイルをすばやく簡単に暗号化したいと思ったことはありませんか?これは、パスワードで保護されたAES256を介してファイルまたはディレクトリを簡単に暗号化する優れた簡単な方法であり、ファイルを詮索好きな目から遠ざけるのに役立ちます。

LinuxにuGetダウンロードマネージャーをダウンロードしてインストールする方法

LinuxにuGetダウンロードマネージャーをダウンロードしてインストールする方法

ダウンロードマネージャーは、単一のアプリケーション内ですべてのダウンロードを管理し、いくつかの便利な機能を提供するための人気のあるツールです。最近WindowsオペレーティングシステムからLinuxに移行した場合は、有名なInternet Download Manager(IDM)の代替手段を探している可能性があります。

2020年はLinuxマルウェアの大流行の年ですか?

2020年はLinuxマルウェアの大流行の年ですか?

そのセキュリティに対する評判は、LinuxがMicrosoftWindowsシステムを定期的に悩ませている種類の脅威に対して脆弱でないと考えられることが多いことを意味します。認識されているセキュリティの多くは、Linuxシステムの数が比較的少ないことによるものですが、サイバー犯罪者は量より質を選択することに価値を見出し始めていますか?

LinuxにSpotifyをインストールする方法

LinuxにSpotifyをインストールする方法

Spotifyは、世界最大の音楽ストリーミングサービスの1つです。モバイル(AndroidとiOS)デバイスとデスクトップ(MacとWindows)デバイスの両方にネイティブクライアントがあります。

fdupesを使用してLinuxで重複ファイルを見つけて削除する方法

fdupesを使用してLinuxで重複ファイルを見つけて削除する方法

大量のメディアやドキュメントを扱う場合、同じファイルの複数のコピーをコンピューターに蓄積することは非常に一般的です。必然的に、以下は冗長ファイルで満たされた雑然としたストレージスペースであり、システム上の重複ファイルの定期的なチェックを引き起こします。

MvコマンドでLinuxファイルを移動する方法

MvコマンドでLinuxファイルを移動する方法

LinuxでGUIファイルブラウザを使用してファイルを移動する方法をすでに知っている可能性がありますが、ターミナルに移動コマンドがあり、ファイルを別のディレクトリにすばやく移動できるかどうか疑問に思われるかもしれません。mvコマンドは必要なものであり、その単純な構文といくつかのオプションの安全フラグで簡単に使用できます。

ttを使用してLinuxで入力テストを行う方法

ttを使用してLinuxで入力テストを行う方法

テクノロジーの現代では、タイピングは多くの職業にとって最も一般的な活動の1つになっています。より速く正確に入力することを学ぶことは、同じ時間でより多くのことを成し遂げるのに役立ちます。

make:コマンドが見つからないUbuntuでエラーを修正する方法

make:コマンドが見つからないUbuntuでエラーを修正する方法

makeコマンドは、おそらくLinuxエコシステムで最も広く使用されているコマンドの1つです。このコマンドは、ソースコードから直接プログラムをビルドおよびコンパイルするために使用されます。

Chromebookでファイルとフォルダを非表示にする方法

Chromebookでファイルとフォルダを非表示にする方法

スマートフォンやPCへの依存度が高まるにつれ、プライバシーを懸念するのは当然のことです。これらの個人用デバイスには、詮索好きな目から遠ざけたい個人データが含まれています。

Wi-FiがUbuntuで機能しませんか?これを修正する方法は次のとおりです

Wi-FiがUbuntuで機能しませんか?これを修正する方法は次のとおりです

Ubuntuは、その堅牢性と比較的少ないエラーで人気があります。しかし、確かに、問題の袋がないわけではありません。そのような問題の1つは、Wi-Fiドライバーにあります。システムの電源を入れても、Wi-Fiが機能していないことがわかります。

Linux上のVimでテキストを見つけて置き換える方法

Linux上のVimでテキストを見つけて置き換える方法

vimは、Linuxで最も人気のあるファイルエディターの1つです。人気の一部はコマンドによるものです

2020年のUbuntu20.04の15のベストテーマ

2020年のUbuntu20.04の15のベストテーマ

多くの新しい更新されたテーマは、Ubuntu20.04の新しいGNOMEデスクトップにインストールする準備ができています。ここに2020年の最高のubuntuテーマのリストがあります

Ubuntuの「Alt-Tab」でWindowsのグループ化を解除する方法

Ubuntuの「Alt-Tab」でWindowsのグループ化を解除する方法

Ubuntuでは、デフォルトで、Windowsの代わりにアプリケーションを切り替えることができます。これを元に戻し、UbuntuのAlt-Tabでタブのグループ化を解除する方法は次のとおりです。

Ubuntu20.04に最適な10以上のGNOME拡張機能

Ubuntu20.04に最適な10以上のGNOME拡張機能

Gno-Menu、Extended Gesturesなどの人気のある拡張機能の多くは、Ubuntu20.04では機能しません。したがって、ここに最も効果的なGNOME拡張機能のリストがあります

7最高のUbuntuダイナミック壁紙アプリ

7最高のUbuntuダイナミック壁紙アプリ

アプリを使用してUbuntuのネイティブ壁紙をスライドショーすることはいつでもできますが、壁紙を動的にダウンロードして設定するためのアプリをいくつか紹介します。

Ubuntuのルートスーパーユーザーの違い

Ubuntuのルートスーパーユーザーの違い

Ubuntuのルートスーパーユーザーの違いは何ですか?さて、ここでカバーしてもらいます。

Ubuntu12.04用のTeamViewer8をインストールします

Ubuntu12.04用のTeamViewer8をインストールします

このビデオでは、完全なガイド付きのubuntu12.04システム用のTeamViewer8をインストールして使用します。しかし、これはウィンドウでも同じように機能します。

2020年のUbuntu用の最高の無料ビデオエディタ

2020年のUbuntu用の最高の無料ビデオエディタ

すべての綿毛を除いて、ここにあなたが素晴らしいビデオを作成するために使うことができるUbuntuのための最高の無料のビデオエディタのリストがあります。

Linuxを使い始めるための9つの基本コマンド

Linuxを使い始めるための9つの基本コマンド

Linuxのハウツーガイドでは、ターミナルで特定の操作を実行することを期待していることがよくありますが、これは最初は恐ろしいように思えます。しかし、心配する必要はありません。このLinuxコマンドのチートシートでは、ターミナルを開いていくつかの便利なコマンドを発行するプロセスについて説明します。

ArchLinuxでパッケージをインストールおよび削除する方法

ArchLinuxでパッケージをインストールおよび削除する方法

Arch Linuxにパッケージをインストールしたいのですが、方法がわかりませんか?多くの人は、DebianベースのディストリビューションからArchに最初に移行するときにこの問題に直面します。ただし、パッケージマネージャーを使用して、Archベースのシステムでパッケージを簡単に管理できます。

UbuntuからAndroidへの5つの最高のWi-Fiファイル転送アプリ

UbuntuからAndroidへの5つの最高のWi-Fiファイル転送アプリ

FTP、ピアツーピアファイル転送、Wi-Fi転送などのメカニズムを使用すると、AndroidとUbuntuの間でファイルを頻繁に共有する場合に時間を節約できます。