Redisの基礎と実践

Redisのインストールと設定 CentOS 7環境でのRedisインストール手順を示します。 ダウンロード 公式サイトから最新版のRedisを取得します。ここではredis-7.2.4.tar.gzを使用します。 解凍 圧縮ファイルを/optディレクトリにコピーし、解凍します。 tar -zxvf redis-7.2.4.tar.gz mv redis-7.2.4 redis ビルド環境の準備 必要なビルドツールがインストールされてい ...

7月1日 16:56 投稿

Redisリストデータ構造の実践的活用手法

Redisのリストは、要素を挿入順に管理する文字列集合です。先頭(左端)または末尾(右端)への要素追加が可能で、最大42億個のデータを格納できます。 先頭への要素追加(LPUSH) LPUSHコマンドで複数の値をリスト先頭に追加します。 > LPUSH order_queue order:2001 (integer) 1 > LPUSH order_queue order:2002 order:2003 (integer) 3 範囲指定による要素取得(LRANG ...

6月30日 22:19 投稿

Redisを用いた分散ロックの実装と応用

分散ロックの基本概念 分散ロックは、複数プロセス間での可視性と相互排他を実現するメカニズムです。主な目的は、複数インスタンスが共有リソースへのアクセスを調整し、プログラムの直列実行を保証することにあります。 分散ロックの必須条件 可視性: すべてのプロセスが同じ状態を認識可能 相互排他: 同時に一つのプロセスのみがロックを保持 高可用性: システ ...

6月28日 19:39 投稿

Linuxサーバー環境構築ガイド:Java, Tomcat, MySQL, Redis, Nginxの導入手順

JDKの導入 パッケージマネージャを利用してOpenJDKを導入します。以下のコマンドを実行し、インストールが完了するまで待機します。 yum install -y java-1.8.0-openjdk-devel 導入が完了したら、バージョンを確認して正常にインストールされたかを検証します。 java -version Tomcatの構築 アプリケーションサーバーであるTomcatのセットアップを行います。まず、配置用 ...

6月28日 01:25 投稿

Djangoにおけるデータベースクエリ最適化の実践手法

クエリセットの遅延評価とキャッシュ機構 Djangoのクエリセットは「遅延評価(lazy evaluation)」されるため、実際に結果を取得する操作(例:ループ処理、list()呼び出し)が行われるまで、SQLは発行されません。この特性により、不要なDBアクセスを防ぎつつ、複数回のフィルタリングや条件追加を効率的に行えます。 また、一度評価されたクエリセットは内部で結果をキ ...

6月27日 21:02 投稿

Java面接対策:SpringBootとRedisを活用した8つのデザインパターンの実装例

Java面接対策:SpringBootとRedisを活用した8つのデザインパターンの実装例 最近のJavaエンジニア面接において、候補者の多くが「デザインパターンを理解している」と主張しながらも、実際のプロジェクトでの応用例を説明できないケースが目立ちます。この記事では、エコマーケットの秒殺システムを題材に、SpringBootとRedisを組み合わせたプロジェクトで実際に採用されて ...

6月27日 16:46 投稿

PHP 向け Redis 拡張機能 phpredis の導入と API リファレンス

概要 phpredis は、PHP 言語から Redis データベースにアクセスするための高性能な拡張機能です。このドキュメントでは、拡張機能のインストール方法から、主要なコマンドの使い方までを解説します。 環境構築と設定 phpredis を利用するには、まずシステムに拡張機能をインストールする必要があります。 拡張機能のインストール ソースコードからビルドする場合、以下の ...

6月27日 16:21 投稿

Redis を用いた分散ロックの実装要件と安全なコード例

導入 マイクロサービスやクラスタ構成において、複数ノード間でリソースへのアクセスを制御する「分散ロック」は必須の仕組みです。Redis はその高速性と原子性から、分散ロックの実装プラットフォームとして広く採用されています。 本稿では、Redis を利用して信頼性の高い分散ロックを構築するための要件と、実装時に陥りやすい誤りを検証します。 分散ロックが満たす ...

6月26日 21:37 投稿

OpenResty と Lua ライブラリを活用した WAF 構築手法

環境の準備とパッケージインストール OpenResty ベースのセキュリティゲートウェイを構築する際、まずは基盤となるミドルウェアと依存ライブラリのセットアップが重要です。RHEL クラスターのディストリビューションにおいて、公式のリポジトリ登録から始めてパッケージ管理を行います。 # リポジトリ設定(RHEL 8 以降は dnf を使用) wget https://openresty.org/packag ...

6月25日 22:50 投稿

Redisハッシュデータ構造の実践的操作ガイド

Redisハッシュは文字列型の属性と値のマッピングテーブルであり、オブジェクトデータの格納に最適なデータ構造です。単一のハッシュで最大232-1(約40億)のフィールドを保持可能です。 基本操作 ユーザープロファイルの管理を例に操作を説明します。 属性値の設定(HSET) 指定キーの属性に値を設定します。 127.0.0.1:6379> HSET user:1001 username "sakura" age " ...

6月25日 19:33 投稿