Redis ile uğraşın ve bu güçlü veri deposuyla Düğüm uygulamalarınızı nasıl optimize edeceğinizi öğrenin.

Bir web uygulaması oluştururken, bunun ölçeklenebilir ve verimli olduğundan emin olmalısınız. Bunu yapmak için birkaç ilke ve kavramı dikkate almanız gerekir.

Redis, web uygulamalarınızın performansını iyileştirmeye yardımcı olabilecek birçok teknolojiden biridir. Herhangi bir web uygulamasının performansını artırmak için kullanabileceğiniz olağanüstü özellikler sunar.

Redis tam olarak nedir ve onu Node.js web uygulamalarınızla kullanmaya nasıl başlayabilirsiniz?

Redis Nedir ve Ne Zaman Kullanmalısınız?

Redis, açık kaynaklı, bellek içi, anahtar-değer veri deposudur. İş kuyruğu, veritabanı, önbellek, oturum yöneticisi, mesaj komisyoncusu ve daha fazlası olarak işlev görebilen esnek bir teknolojidir.

Redis'in hızı, çok yönlülüğü ve kullanım kolaylığının birleşimi, onu yazılım geliştirici ekosisteminde çok değerli bir araç haline getiriyor.

Redis'i Ne Zaman Kullanmalısınız?

Redis birçok görev için çok uygundur, ancak onu yalnızca mantıklı olduğunda kullanmaya dikkat etmelisiniz.

instagram viewer

Redis'i şu senaryolarda kullanmayı düşünmelisiniz:

  • Önbelleğe almak: Redis, veritabanları üzerindeki yükü önlemeye ve genel performansı iyileştirmeye yardımcı olmak için bir önbellek uygulamanın en popüler yoludur.
  • oturum yönetimi: Kimlik doğrulama ve durum yönetimi için kullanıcı oturumlarını depolamak ve yönetmek Redis ile çok kolaydır.
  • Geçici veri depolama: Redis, verileri depolamanıza ve belirli bir süre sonra otomatik olarak silmenize olanak tanır. Bu, onu aşağıdakiler gibi geçici verileri depolamak için iyi bir araç yapar: JSON web belirteçleri, iş kuyrukları, vesaire.

Redis'i kullanmayı düşünmeniz gereken diğer durumlar arasında, bir mesaj aracısının uygulanması, optimize edilmesi yer alır. veritabanı işlemleri ve hatta listeler, kümeler ve veri yapıları gibi veri yapılarını verimli bir şekilde depolamak ve bunlara erişmek karmalar.

Node.js ile Redis Nasıl Kullanılır

Node.js, verimli ve ölçeklenebilir sunucu tarafı uygulamalar oluşturmak için popüler bir teknolojidir. Yüksek performans ve ölçeklenebilirlik elde etmek için Redis gibi destekleyici teknolojilerle birlikte kullanabilirsiniz.

Redis birkaç dili destekler. onu kullanabilirsin PHP'de veri depolamak için Ve Golang için mükemmel Redis istemcileri var. Node.js için en popüler iki Redis istemcisi: düğüm-redis Ve ioredis.

Her iki paket de şu adresten edinilebilir: npm ve kullanımı kolaydır. Temel fark şu ki düğüm-redis resmi müşteridir, topluluk önerirken ioredis.

Node.js'den Redis'e Bağlanma

Başlamak için bilgisayarınızda Redis kurulu ve bir Node.js geliştirme ortamı kurulmuş olmalıdır. adresindeki kurulum kılavuzunu inceleyin. redis.io Redis'i Linux, macOS ve Windows'a yüklemek için.

Redis'e bağlanabilmek için tercih ettiğiniz Redis istemci SDK'sını projenize yüklemeniz gerekir. Tercihinize bağlı olarak (kullanacağız düğüm-redis), Redis istemcisini yüklemek için aşağıdaki komutlardan birini çalıştırın:

npm kurulum redis -- kaydet
npm ioredis'i kur -- kaydet

İlk komut yüklenir düğüm-redis, ikincisi kurulurken ioredis.

Yeni kurulan istemcinizi yapılandırmak için Redis'in çalıştığından emin olmalısınız. Bunu basitçe başlayarak yapabilirsiniz. redis-cli terminalinizde:

bu ping komutu, çalıştığını doğrulamak için sunucuya ping gönderir ve bir PONG CLI'deki yanıt, sunucunun iyi çalıştığı anlamına gelir. Şimdi bir oluştur redis.js Düğüm projenizde dosya oluşturun ve Redis'i yapılandırmak için içine aşağıdaki kodu yazın:

sabit yeniden = gerekmek("yeniden")

// varsayılan yapılandırmayı kullanarak başlat
sabit RedisClient = redis.createClient()

sabit bağlantı Redis = zaman uyumsuz () => {
// redis'e bağlan
beklemek RedisClient.connect()

// hata işle
RedisClient.on('hata', (hata) => {
konsol.hata(`Redis ile bir hata oluştu: ${hata}`)
})

konsol.kayıt('Redis başarıyla bağlandı...')
}

Yukarıdaki kod, uygulamada yeni bir Redis istemcisini başlatır. bu müşteri oluştur redis paketinin işlevi, belirlediğiniz parametreleri kullanarak bir istemci oluşturmanıza olanak tanır.

Ana makinenizi, bağlantı noktanızı, kullanıcı adınızı, parolanızı veya bağlantı dizenizi belirtebilir veya varsayılan değerleri kullanabilirsiniz. Örneğin, düğüm-redis bağlantı noktasında, localhost üzerinde çalışmaya başlayacak 6379, varsayılan olarak.

İşte kullanabileceğiniz birkaç yol müşteri oluştur işlev:

// bağlantı dizesi kullanılıyor
sabit RedisClient = redis.createClient("redis://127.0.0.1:6379")

// parametre nesnesi kullanılarak
sabit RedisClient = redis.createClient({
priz: {
ev sahibi: "127.0.0.1",
liman: "6379"
},
Kullanıcı adı: "redis kullanıcı adınız",
şifre: "şifreniz"
})

Üretimde güvenli Redis örnekleri kullanın. Bu durumda, ya güvenli bir URL bağlantı için dize veya yukarıda gösterilen parametreleri kullanın. Durum ne olursa olsun, kimlik bilgilerini kodun dışında tutmayı ve bunun yerine ortam değişkenlerini kullanmayı her zaman unutmayın.

Node.js'de Temel Redis İşlemlerini Gerçekleştirme

Aşağıdaki kod, kullanarak Redis'e bağlanır. bağlanRedis yukarıdaki işlev ve Düğüm uygulamalarınızdan Redis'te gerçekleştirebileceğiniz bazı temel işlemleri gösterir.

sabit testRedis = zaman uyumsuz () => {
beklemek bağlanRedis()

// Bir değer ayarla ve al
beklemek RedisClient.set("isim", "Timmy")
sabit getCommand = beklemek RedisClient.get("isim")
konsol.log (getCommand)

// Değerleri hemen silin veya sona ermek üzere planlayın
// birkaç saniye içinde
beklemek RedisClient.del("isim");
beklemek RedisClient.setEx("konum", 60, "Lagos")

// Bir listenin önüne veya arkasına itin
beklemek RedisClient.lPush("günler", "Pazartesi")
beklemek RedisClient.rPush("günler", "Salı")
beklemek RedisClient.lPush("günler", "Çarşamba")
sabit gün Dizisi = beklemek RedisClient.lRange("günler", 0, -1)
// ['çarşamba', 'pazartesi', 'salı'] yazdırır
konsol.log (daysArray)

// Bir listenin önünden veya arkasından bir öğeyi kaldır
beklemek RedisClient.rPop("günler")
beklemek RedisClient.lPop("günler")
sabit yeniDaysArray = beklemek RedisClient.lRange("günler", 0, -1)
// ['pazartesi'] yazdırır
konsol.log (yeniDaysArray)
}

testRedis()

kullanımına dikkat edin zaman uyumsuz Ve beklemek Burada. Bunun nedeni, tüm işlevlerin eşzamansız olarak çalışması ve vaatler döndürmesidir, bu nedenle bunların sonuçlarına hemen ihtiyacınız varsa, beklemek onlara.

Yukarıdaki kod, yalnızca bir Node.js uygulamasından Redis'te gerçekleştirebileceğiniz bazı temel işlemleri gösterir. Bakmaya değer daha birçok komut ve kavram var.

bu Redis Komutları bulunan README bölümünde düğüm-redisGitHub depo, diğer tüm komutları ve ne yaptıklarını bulmak için iyi bir yerdir.

Verimli Uygulamalar Oluşturmak için Redis'i Kullanın

Redis'in gücünden yararlanmak, bir geliştirici olarak yüksek verimliliğe sahip sunucu tarafı uygulamalar oluşturmanıza olanak tanır. Redis'in bellek içi veri depolaması ve kapsamlı veri yapıları ve komutları ile uygulamalar, olağanüstü performans optimizasyonları sağlayabilir.

Uygulamanızın performansını artırmak ve daha iyi bir kullanıcı deneyimi sunmak için Redis'i bir sonraki Node.js uygulamanıza entegre etmeyi kesinlikle düşünmelisiniz.