Merhaba bu yazımda sizlere Nest.js “@nestjs-modules/ioredis” kütüphanesini kullanarak Nest.js uygulamalarımızda Redis Cache mekanizmasını nasıl implemente edebileceğinizi göstereceğim ayrıca. Bu kütüphanenin yanında “ioredis” kütüphanesinide indirmeyi unutmayalım. Bu 2 kütüphaneyi kullanacağız. Bu işlemi render.com üzerinden Free Redis Clusteri oluşturarak yapacağız. Tabi ki siz her hangi bir local ve cloud ortamı kurulumu tercih edebilirsiniz.
Öncelikle Nest.js uygulamamızda app.module.ts dosyamıza gelelim daha önceden kurulum yaptığınızı varsayıyoruz tabi ki bu aşamada
app.module.ts dosyam bu şekilde burada RedisModule.forRootAsync methodu ile redis bağlantımızı gerçekleştiriyoruz tabi ki keepAlive ve lazyConnect gibi ayarlarıda extra olarak uygulayabilirsiniz. Bundan sonra ise Nest.js uygulamamızın env dosyasında REDIS_HOST değişkenimizi tanımlayalım. Bir sonraki adımda ise render.com üzerinden bir Redis Clusture oluşturup Nest.js io redis modülümüz üzerinden Redis methodlarına erişim sağlayabilmek.
Render.com veya direk https://dashboard.render.com üzerinden
New seçeneğine tıklayıp. Yeni bir redis sunucusu oluşturun ( Free Cluster seçmeyi unutmayın )
Ayarlarınızı yapılandırın Redis Instance yarattıktan sonra internal url ile Nest.js uygulamamızın env dosyasında REDIS_HOST değişkenine karşılık gelecek şekilde yerleştirebiliriz. Son olarak ise kullanıma gelecek olursak..
Inject Redis decaratörü ile çağırıp her hangi bir service katmanımızda redis methodlarını kullanabiliriz.
Örnek kullanım ;
await this.redis.set()
await this.redis.get()
Kod örneklerini verdiğim repo ; https://github.com/TarikSogukpinar/blog.io/blob/master/api/src/app.module.ts
bir sonra ki yazımda görüşmek üzere iyi çalışmalar dilerim.