Go 言語の gin フレームワークの分散デプロイメント環境でローカル ツールを保存およびキャッシュする方法 - Redis コンテナーの実装 (11)

Redis は、高速でスケーラブルなキー/値ストレージ ソリューションを提供するオープンソースのインメモリ データ ストレージ システムです。

Redis は、文字列、ハッシュ テーブル、リスト、セット、ソート セットなど、さまざまなデータ構造をサポートしています。通常、キャッシュ、メッセージ ブローカリング、キューイング、リアルタイム アプリケーションなど、さまざまな目的で使用されます。

Redis の主な機能は次のとおりです。
1. 高速: Redis はメモリに保存され、マイクロ秒レベルで読み取りおよび書き込み操作を実行できます。効率的なデータ構造とアルゴリズムを使用して、高速なパフォーマンスを提供します。
2. 永続性: Redis はデータの永続性をサポートしており、再起動後に復元できるようにデータをディスクに保存できます。
3. 多様なデータ構造: Redis は、文字列、ハッシュ テーブル、リスト、セット、順序付きセットなど、さまざまなデータ構造をサポートしています。これにより、非常に柔軟になり、さまざまなアプリケーション シナリオに適応できます。
4. 高可用性: Redis は、高可用性とスケーラビリティを提供できるマスター/スレーブ レプリケーションと分散アーキテクチャをサポートしています。
5. パブリッシュ/サブスクライブ: Redis はパブリッシュ/サブスクライブ モードをサポートしており、これを使用してメッセージング システムを構築し、リアルタイムのデータ プッシュとイベント通知を実現できます。

Redis を使用するには、Redis サーバーをインストールし、対応するクライアント ライブラリを使用して Redis サーバーに接続し、操作する必要があります。一般的な Redis クライアント ライブラリには、Redis の公式 Redis-cli、Python の redis-py、Node.js の ioredis などが含まれます。

Windows環境にRedisサーバーをインストールするにはどうすればよいですか?

 

Redis インストーラーを使用して Redis のインストール プロセスを簡素化したい場合は、Redis が公式に推奨している Microsoft Developer Toolkit (MSOpenTech Redis) の使用を試みることができます。MSOpenTech Redis インストーラーを介して Windows に Redis をインストールする手順は次のとおりです。

1. Redis の公式 Web サイト: https://redis.io/に移動し、「ダウンロード」メニューをクリックします。
2. [Windows] 列の下で、[MS Open Tech] リンクをクリックします。
3. GitHub ページで、最新バージョンの「Redis-xxxzip」ファイルを見つけてクリックし、Redis インストーラーをダウンロードします。「xxx」はバージョン番号を表すことに注意してください。
4. ダウンロードが完了したら、インストールする場所 (「C:\Redis」など) にファイルを解凍します。
5. Redis 解凍ディレクトリに、「Redis-xxx」 (バージョン番号) という名前のフォルダーが表示されるので、そのフォルダーに入ります。
6. このフォルダーには、`install_service.bat` という名前のバッチ ファイルがあります。このファイルを管理者権限で実行します。
7. インストーラーは、Redis サービスに使用するポート番号を入力するように求めます。デフォルトは 6379 です (別のポート番号を選択することもできます)。
8. インストーラーが Redis のインストールを完了するまで待ちます。
9. インストールが完了したら、Windows の「サービス」マネージャーを使用して Redis サービスを確認して開始するか、コマンドラインで「redis-cli」コマンドを使用して Redis と対話できます。

このインストーラーを使用すると、Windows での Redis のインストールと管理が簡単になります。この方法がお役に立てば幸いです。他にご質問がございましたら、お気軽にお問い合わせください。

補足として、上記のインストール方法が適していない場合は、以下を参照してください。

 /release/のインデックス

 

実際、Redis は公式には「redis-x86-6x.msi」という名前のインストール ファイルを提供していません。Redis によって公式に提供されるインストール プログラムには、32 ビットと 64 ビットの 2 つの主なバージョンがあります。

32 ビット Windows オペレーティング システムに Redis 6.x バージョンをインストールするには、以下の手順に従ってください。

  1. Redis 公式 Web サイト: https://redis.io/ にアクセスし、「ダウンロード」メニューをクリックします。

  2. 「Windows」列の下で「MS Open Tech」リンクを見つけてクリックします。

  3. Redis-x.x.x.zipGitHub ページで、ファイルの最新バージョンを見つけてクリックし、 Redis 圧縮パッケージをダウンロードします。x.x.xはバージョン番号を表すことに注意してください。

  4. ダウンロードが完了したら、インストールする場所 (例 C:\Redis: ) にファイルを解凍します。

  5. 解凍した Redis フォルダーを開くと、いくつかのファイルとフォルダーが表示されます。その中でもredis-server.exeRedisのサーバープログラムです。

  6. Shift キーを押したまま空のスペースを右クリックし、[ここでコマンド ウィンドウを開く] または [ここで PowerShell ウィンドウを開く] を選択します。

  7. 表示されるコマンド ラインまたは PowerShell ウィンドウで、次のコマンドを実行して Redis サーバーを起動します。

    redis-server.exe redis.windows.conf
    

    これにより、Redis サーバーがデフォルトのポート (6379) で起動します。

  8. Redis サーバーが正常に起動すると、Redis のバージョン番号、ポート番号などのログ情報がウィンドウに表示されます。

64 ビット Windows オペレーティング システムの場合は、同じ手順に従って Redis をインストールできます。64 ビット システム用の Redis 圧縮パッケージをダウンロードするだけです。

注:  Windows 5.0.14 をダウンロードして、まとめてインストールします。

システム環境変数を設定しないと使用できませんので、必ずシステム環境変数を設定してください。使用による影響については、次を参照してください。

 これは、インストール後に redis サービスが開始されるかどうかを決定するためのもので、net start redis コマンド ラインを使用して開始することもできます。

この場合、インストールは成功しています。 

Redisを介して、データの読み書き、有効期限の設定、追加、削除、変更、操作の確認など、データに関するさまざまな操作を実装できます。また、トランザクション、Lua スクリプト、パイプライン、並べ替え、範囲クエリなどの高度な機能も提供します。キャッシュ システムを構築する場合でも、リアルタイム統計、ランキング、メッセージ キューなどの機能を実装する場合でも、Redis は非常に強力で柔軟なツールです。

では、ジンボックスで Redis を使用するにはどうすればよいでしょうか?

1. 元の Cookie コンテナー ミドルウェアを Redis によって作成されたミドルウェアに置き換えます (go get -u github.com/go-redis/redis/v5)。

 github.com/gomodule/redigo@latest を取得してください

github.com/gin-contrib/sessions/redis を取得してください

インストール後の main.go ファイル内のコード

package main

import (
	"project/routers"

	"github.com/gin-contrib/sessions"
	"github.com/gin-contrib/sessions/redis"
	"github.com/gin-gonic/gin"
)

func main() {
	r := gin.Default()

	// Create template for router html template
	r.LoadHTMLGlob("*templates/**/**/*")

	// 设置 session 中间件
	// store := cookie.NewStore([]byte("secret")) // 设置 Session 密钥
	// r.Use(sessions.Sessions("mysession", store))

	// 换成 redis 容器存储
	store, _ := redis.NewStore(10, "tcp", "localhost:6379", "", []byte("secret")) // redis 容器注册中间件
	/*
		一个参数代表了位数int
		第二参数代表传输协议(tcp、udp)
		第三参数代表 redis的链接地址,如果是外网就是ip地址加端口号
		第四参数代表 redis服务的访问密码,如果本地未设置那么是空
		第五参数代表 redis容器的保存数据的秘钥(这里的值用来内部加密了!)
	*/
	r.Use(sessions.Sessions("mysessionRedis", store))

	r.GET("/", func(ctx *gin.Context) {
		ctx.JSON(200, gin.H{
			"message": "Hello, world!",
		})
	})

	routers.AdminRoutersInit(r)
	routers.DefaultRoutersInit(r)

	r.Run(":8081")

}

上記は、ストレージ データ コンテナの変更後、ストレージ変換のミドルウェア部分とその他のセッション部分が使用されなくなるというもので、この変更はビッグ データの分散システム アクセスにより適合します。

 

お役に立てれば!他にご質問がございましたら、お気軽にお問い合わせください。

おすすめ

転載: blog.csdn.net/A_LWIEUI_Learn/article/details/131585066