[golang]fiber API4~Ambassador: Redisの導入~

こんにちは、KOUKIです。

GolangのWebフレームワークであるfiberを使ってAPIを開発しています。

前回はAliasを設定し、リクエストごとに処理の振り分けを行いました。

今回は、Redisを導入してみましょう。

Redisは、DBのキャッシュやメッセージブローカーなどに利用されるオープンソースのストレージです。Key-Valueの形式でデータを保存できるので、使い勝手も良いです。

尚、Udemyの「React, NextJS and Golang: A Rapid Guide – Advanced」コースを参考にしています。解釈は私が勝手に付けているので、本物をみたい場合は受講をお勧めします!

前回

事前準備

モジュール

ファイル

作るもの

Ambassdor機能を作りたいと思います。エンドポイントは、次の通りです。

エンドポイント
  • GET /api/ambassador/products/frontend
  • GET /api/ambassador/products/backend
  • POST /api/ambassador/links
  • GET /api/ambassador/stats
  • GET /api/ambassador/rankings

Redisの導入

本APIの実行環境は、Dockerです。Dockerを使うとめんどくさい環境構築もコマンド一つで行えるようになるので、ローカルにインストールすることを強くお勧めします。

Redis Serviceの追加

docker-compose.ymlにRedisのServiceを追加しましょう。

コネクション

Redisへコネクションするコードを実装します。

コネクションの呼び出し

main.goからRedisコネクションの呼び出し処理を実装します。

検証

コンテナを立ち上げて、コネクションエラーが発生しないか検証してみましょう。

Fiberのメッセージが出てきたので、コネクションは問題ないと思います。ただし、コネクションに失敗しても、エラーを吐いてプログラムが停止するような作りにしていないので、次回以降で実際にデータが保存できるか確認します。

次回

次回は、キャッシュの登録処理を実装しましょう。

Go言語まとめ

ソースコード

ここまでのソースコードを以下に記載します。

main.go

redis.go

docker-compose.yml

コメントを残す