公式サイトに手順書があったのでその通りに進めました。
Heroku Redis | Heroku Dev Center
Heroku Redis は、本番環境の Redis サービスに、ローカルコマンドラインアクセス、指標、およびログを提供するアドオンです。
heroku-redisのインストール
CLIで、heroku-redisアドオンの追加コマンドを実行します。
アドオンは無料枠がありますが、追加するためにはクレジットカード登録が必要となります。
登録がないと以下のように促されるため、Herokuの管理画面からクレジットカードを登録します。
% heroku addons:create heroku-redis:hobby-dev -a your-app-name
Creating heroku-redis:hobby-dev on ⬢ your-app-name... !
▸ Please verify your account to install this add-on plan (please enter a credit card) For more information, see https://devcenter.heroku.com/categories/billing Verify now at https://heroku.com/verify
クレカの登録方法は以下に書きました。
登録すると、heroku-redisアドオンの追加が成功しました。
% heroku addons:create heroku-redis:hobby-dev -a your-app-name
Creating heroku-redis:hobby-dev on ⬢ your-app-name... free
Your add-on should be available in a few minutes.
! WARNING: Data stored in hobby plans on Heroku Redis are not persisted.
redis-convex-78430 is being created in the background. The app will restart when complete...
Use heroku addons:info redis-convex-78430 to check creation progress
Use heroku addons:docs heroku-redis to view documentation
ちなみに無料枠のスペックはこんな感じです。
あまり無茶をするとあっという間に制限にかかりそう。

redisの作成にはしばらく時間がかかります。
Herokuの管理画面またはCLIからステータスを確認することができます。
% heroku addons:info redis-convex-78430
=== redis-convex-78430
Attachments: your-app-name::REDIS
Installed at: Sun Jul 31 2022 15:20:40 GMT+0900 (日本標準時)
Owning app: your-app-name
Plan: heroku-redis:hobby-dev
Price: free
State: creating #作成中
Stateが「created」になれば、作成完了です。
% heroku addons:info redis-convex-78430
=== redis-convex-78430
Attachments: your-app-name::REDIS
Installed at: Sun Jul 31 2022 15:20:40 GMT+0900 (日本標準時)
Owning app: your-app-name
Plan: heroku-redis:hobby-dev
Price: free
State: created #作成完了
redisの接続URLを確認します。
2つありますが、TLS接続の「REDIS_TLS_URL」の方を使うのが推奨とのことです。
% heroku config | grep REDIS
REDIS_TLS_URL: rediss://:pf*****@ec2-**-***-**-***.compute-1.amazonaws.com:29150
REDIS_URL: redis://:pf*****@ec2-**-***-**-***.compute-1.amazonawNs.com:29149
以下は参考文書です。

Nodeのioredisパッケージをインストール
Nodeからredisにアクセスするためにioredisパッケージをインストールします。
redisパッケージでもよいですが、async/awaitが使えておすすめとのことなのでこちらにしました。
% npm install ioredis
added 9 packages, and audited 129 packages in 3s
17 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
npm notice
npm notice New minor version of npm available! 8.13.2 -> 8.15.1
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.15.1
npm notice Run npm install -g npm@8.15.1 to update!
npm notice
% npm list
your-app-name@1.0.0 /Users/user-name/develop/heroku/your-app-name
├── ioredis@5.2.2
ioredisの使い方
Nodeからの接続は以下のような感じでできます。
const Redis = require("ioredis");
const client = new Redis(process.env.REDIS_TLS_URL, {
tls: {
rejectUnauthorized: false
}
});
〜REDISへの読み書き〜
client.disconnect();
ioredisの使い方は以下が詳しいです。
Heroku Redis | Heroku Dev Center
Heroku Redis は、本番環境の Redis サービスに、ローカルコマンドラインアクセス、指標、およびログを提供するアドオンです。
redis:cliを使うと、herokuのredisをcliから操作することができます。
Nodeから意図したデータの読み書きができているかの確認やデバッグに大変便利です。
% heroku redis:cli -a your-app-name
redisコマンドリファレンスは以下が使いやすかったです。
コマンドリファレンス — redis 2.0.3 documentation
コメント