Redis入門:主要な特徴とUbuntuへのインストール手順
Redisは、メモリ上でデータを管理するミドルウェアです。データベースとしても使用できますが、特にデータベースへのアクセスを高速化するキャッシュとして活用されることが多いです。
ミドルウェア とは、業務ロジックに直接依存せず、データベース、キャッシュ、メッセージキューといった汎用的な機能を提供するソフトウェア層を指します。
データベースキャッシュ の考 ...
5月30日 06:07 投稿
分散型一意ID生成方式の実装方法
グローバル一意IDの設計特性
グローバル一意性
分散システム全体で重複しない一意な識別子を生成する必要があります。
高可用性
水平スケーリングやクラスタ構成により、ノード障害時でも継続的なID生成を保証します。
セキュリティ
業務ロジックとは独立した専用コンポーネントとして設計し、複数サービス間での共有を可能にします。
高パフォーマンス
短時間で大 ...
5月29日 08:10 投稿
Node.jsアプリケーションにおけるLimitrrの実装ガイド
Node.jsアプリケーションにおけるLimitrrの実装ガイド
LimitrrはRedisをバックエンドとして動作する軽量なレートリミティングライブラリであり、Expressフレームワーク向けのミドルウェアも提供しています。このツールを使用することで、開発者はアプリケーション内の各種エンドポイントに対してアクセス制限や遅延処理を実装できます。
1. プロジェクト概要と技術スタック ...
5月28日 22:33 投稿
Redisを用いた分散ロックの実装方法とベストプラクティス
はじめに
分散システムにおいてリソースへの同時アクセスを制御するための分散ロックは、現代の分散アプリケーション開発において不可欠な要素です。本記事では、Redisを利用した分散ロックの実装方法について詳しく解説します。インターネット上には多くのRedis分散ロックの実装例がありますが、その多くは重要な考慮事項を見落としている場合があります。本記事では、堅 ...
5月28日 06:41 投稿
Redissonの分散タスクスケジューリング:スケジュールされたタスクと周期タスク
Redissonの分散タスクスケジューリング:スケジュールされたタスクと周期タスク
分散システムにおいて、従来のスケジュールされたタスクはいくつかの重要な課題に直面します。単一障害点によるタスクの中断、クラスタ環境での重複実行、タスク状態の追跡の困難さなどが挙げられます。RedissonはRedisを基盤とした分散タスクスケジューリング機能を提供し、RScheduledExecut ...
5月28日 02:55 投稿
Redisの4つのモード
主従モード
Redisの主従モードは、主サーバーと従サーバーの関係を構築するシンプルな方法です。一対一の主従関係や一対多の主従関係を設定可能です。
主従モードの設定は非常に簡単です。従サーバーの設定ファイルに以下を追加します。
slaveof <master-ip> <master-port>
# 例えば
# slaveof 192.168.1.197 6379
メリット:
設定が簡単で、柔軟性がありま ...
5月27日 03:23 投稿
Guava + Redis 二段階キャッシュユーティリティの実装
本稿では、GuavaローカルキャッシュとRedis分散キャッシュを組み合わせた二段階キャッシュユーティリティクラスを実装します。この設計は、データ読み取り頻度が高く書き込み頻度が低いシナリオに適しており、リスト型データを効率的にキャッシュするための汎用的なソリューションを提供します。
package com.example.cache.util;
import com.alibaba.fastjson.JSON;
imp ...
5月25日 18:28 投稿
Redis哨兵とクラスタリングの構築とLVSのDRモデル実践
Redisの哨兵とクラスタリングの仕組みについて説明し、それぞれの設定方法を紹介します。さらに、負荷分散システムであるLVSのDRモデルの動作原理と実践例も解説します。
Redis哨兵の仕組みと設定
Redis哨兵はRedisサーバーの監視と自動フェイルオーバーを行う機能です。主にマスターとスレーブ間の故障切り替えを管理します。
哨兵の設定手順
マスターやスレーブノードの ...
5月24日 06:06 投稿
外部に公開してはならないAPI endpointの対処法
システム開発において、特定のAPIを外部ネットワークに公開せず、内部サービス間でのみ利用できるようにしたい場合、代表的な3つのアプローチが存在する。
内部向け・外部向けでマイクロサービスを分離する
ゲートウェイとRedisを活用したホワイトリスト方式
ゲートウェイとAOPによるリクエスト元判定
以下で、それぞれの方案の特徴と実装方法について詳しく解説する。
1 ...
5月23日 20:00 投稿
Spring Bootを使用した分散ロックの実装
Spring Bootを使用した分散ロックの実装
1. 分散ロックとは何か?
分散システムでは、複数のノードが並行してタスクを実行するため、データの一貫性を保証し、リソースの競合を避けるために共有リソースへのアクセスを制御するメカニズムが必要です。分散ロックは、分散環境における並行アクセスを制御するための仕組みで、同一時刻に一つのノードのみがロックを取得できる ...
5月22日 21:29 投稿