Hızlı Başlangıç: Node.js içinde Redis için Azure Cache kullanma

Bu hızlı başlangıçta, Azure'daki herhangi bir uygulamadan erişilebilen güvenli ve ayrılmış bir önbelleğe erişim elde etmek için Redis için Azure Cache bir Node.js uygulamasına ekleyeceksiniz.

Önkoşullar

Diğer Node.js istemcilerini kullanmaya ilişkin örnekler için Node.js Redis istemcileri listesindeki Node.js istemcilerinin kendi belgelerine bakın.

Önbellek oluşturma

  1. Önbellek oluşturmak için Azure portalında oturum açın ve Kaynak oluştur'u seçin.

    Sol gezinti bölmesinde kaynak oluştur seçeneği vurgulanır.

  2. Yeni sayfasında Veritabanları'nı ve ardından Redis için Azure Cache'ı seçin.

    Yeni'de Veritabanları vurgulanır ve Redis için Azure Cache vurgulanır.

  3. Yeni Redis Önbelleği sayfasında, yeni önbelleğinizin ayarlarını yapılandırın.

    Ayar Bir değer seçin Açıklama
    Abonelik Açılan menüye gidin ve aboneliğinizi seçin. Bu yeni Redis için Azure Cache örneğinin oluşturulacağı abonelik.
    Kaynak grubu Açılan menüden bir kaynak grubu seçin veya Yeni oluştur'u seçip yeni bir kaynak grubu adı girin. Önbelleğinizi ve diğer kaynakları oluşturacağınız kaynak grubunun adı. Tüm uygulama kaynaklarınızı tek bir kaynak grubuna yerleştirerek bunları kolayca yönetebilir veya silebilirsiniz.
    DNS adı Benzersiz bir ad girin. Önbellek adı yalnızca sayı, harf veya kısa çizgi içeren 1 ile 63 karakter arasında bir dize olmalıdır. Adın bir sayı veya harfle başlayıp bitmesi gerekir ve ardışık kısa çizgi içeremez. Önbellek örneğinizin ana bilgisayar adı< DNS adı.redis.cache.windows.net.>
    Konum Açılan menüye gidin ve bir konum seçin. Önbelleğinizi kullanan diğer hizmetlerin yakınında bir bölge seçin.
    Önbellek türü Açılan menüye gidin ve bir katman seçin. Katman, önbellek için kullanılabilen boyutu, performansı ve özellikleri belirler. Daha fazla bilgi için bkz. Redis için Azure Cache Genel Bakış.
  4. sekmesini seçin veya sayfanın en altındaki Ağ düğmesini seçin.

  5. sekmesinde bağlantı yönteminizi seçin.

  6. İleri: Gelişmiş sekmesini seçin veya Gelişmiş sekmesini görmek için sayfanın alt kısmındaki İleri: Gelişmiş düğmesini seçin.

    Çalışma bölmesindeki Gelişmiş sekmesini ve seçilebilecek seçeneği gösteren ekran görüntüsü.

    • Temel veya Standart önbellekler için TLS olmayan bir bağlantı noktası için seçimi değiştirin. Microsoft Entra Authentication'ı etkinleştirmek isteyip istemediğinizi de seçebilirsiniz.
    • Premium önbellek için TLS olmayan bağlantı noktası, kümeleme, yönetilen kimlik ve veri kalıcılığı ayarlarını yapılandırın. Microsoft Entra Authentication'ı etkinleştirmek isteyip istemediğinizi de seçebilirsiniz.
  7. Sonraki: Etiketler sekmesini seçin veya sayfanın en altındaki İleri: Etiketler düğmesini seçin.

  8. İsteğe bağlı olarak, kaynağı kategorilere ayırmak istiyorsanız Etiketler sekmesinde adı ve değeri girin.

  9. Gözden geçir ve oluştur’u seçin. Azure'ın yapılandırmanızı doğruladığı Gözden Geçir ve oluştur sekmesine yönlendirilirsiniz.

  10. Yeşil Doğrulama başarılı iletisi görüntülendiğinde Oluştur'u seçin.

Önbelleğin oluşturulması biraz zaman alır. İlerleme durumunu Redis için Azure Cache Genel Bakış sayfasından izleyebilirsiniz. Durum Çalışıyor olarak gösterildiğinde önbellek kullanıma hazırdır.

Azure portalından konak adını, bağlantı noktalarını ve erişim anahtarlarını alma

Redis için Azure Cache sunucunuzu bağlamak için önbellek istemcisinin ana bilgisayar adına, bağlantı noktalarına ve önbellek anahtarına ihtiyacı vardır. Bazı istemciler bu öğelere biraz daha farklı adlarla başvurabilir. Konak adını, bağlantı noktalarını ve anahtarları Azure portalından alabilirsiniz.

  • Erişim anahtarlarını almak için önbellek sol gezintinizden Erişim anahtarları'nı seçin.

    Redis için Azure Cache tuşları

  • Konak adını ve bağlantı noktalarını almak için önbellek sol gezintinizden Özellikler'i seçin. Ana bilgisayar adı DNS name.redis.cache.windows.net biçimindedir<.>

    Redis için Azure Cache özellikleri

ANA BİLGİSAYAR ADI ve Birincil erişim anahtarınız için ortam değişkenleri ekleyin. Hassas bilgileri doğrudan kodunuzla birlikte kullanmak yerine kodunuzdaki bu değişkenleri kullanın.

set AZURE_CACHE_FOR_REDIS_HOST_NAME=contosoCache
set AZURE_CACHE_FOR_REDIS_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Önbelleğe bağlanma

en son node_redis derlemeleri çeşitli bağlantı seçeneklerini destekler. Kodunuzdaki her işlem için yeni bir bağlantı oluşturmayın. Bunun yerine, mümkün olduğunca bağlantıları yeniden kullanın.

Yeni bir Node.js uygulaması oluşturma

  1. redistest.js adlı yeni bir betik dosyası oluşturun.

  2. Komutunu kullanarak bir redis paketi yükleyin.

    `npm install redis`
    
  3. Aşağıdaki örnek JavaScript’i dosyaya ekleyin.

    const redis = require("redis");
    
    // Environment variables for cache
    const cacheHostName = process.env.AZURE_CACHE_FOR_REDIS_HOST_NAME;
    const cachePassword = process.env.AZURE_CACHE_FOR_REDIS_ACCESS_KEY;
    
    if(!cacheHostName) throw Error("AZURE_CACHE_FOR_REDIS_HOST_NAME is empty")
    if(!cachePassword) throw Error("AZURE_CACHE_FOR_REDIS_ACCESS_KEY is empty")
    
    async function testCache() {
    
        // Connection configuration
        const cacheConnection = redis.createClient({
            // rediss for TLS
            url: `rediss://${cacheHostName}:6380`,
            password: cachePassword
        });
    
        // Connect to Redis
        await cacheConnection.connect();
    
        // PING command
        console.log("\nCache command: PING");
        console.log("Cache response : " + await cacheConnection.ping());
    
        // GET
        console.log("\nCache command: GET Message");
        console.log("Cache response : " + await cacheConnection.get("Message"));
    
        // SET
        console.log("\nCache command: SET Message");
        console.log("Cache response : " + await cacheConnection.set("Message",
            "Hello! The cache is working from Node.js!"));
    
        // GET again
        console.log("\nCache command: GET Message");
        console.log("Cache response : " + await cacheConnection.get("Message"));
    
        // Client list, useful to see if connection list is growing...
        console.log("\nCache command: CLIENT LIST");
        console.log("Cache response : " + await cacheConnection.sendCommand(["CLIENT", "LIST"]));
    
        // Disconnect
        cacheConnection.disconnect()
    
        return "Done"
    }
    
    testCache().then((result) => console.log(result)).catch(ex => console.log(ex));
    

    Bu kod, önbellek ana bilgisayar adını ve anahtar ortam değişkenlerini kullanarak bir Redis için Azure Cache örneğine nasıl bağlanabileceğinizi gösterir. Kod ayrıca önbellekte bir dize değeri depolar ve alır. Ayrıca PING ve CLIENT LIST komutları da yürütülür. Redis’i node_redis istemcisiyle kullanmaya ilişkin daha fazla örnek için bkz. https://redis.js.org/.

  4. Node.js ile betiği çalıştırın.

    node redistest.js
    
  5. Çıktıyı örnek olarak ekleyin.

    Cache command: PING
    Cache response : PONG
    
    Cache command: GET Message
    Cache response : Hello! The cache is working from Node.js!
    
    Cache command: SET Message
    Cache response : OK
    
    Cache command: GET Message
    Cache response : Hello! The cache is working from Node.js!
    
    Cache command: CLIENT LIST
    Cache response : id=10017364 addr=76.22.73.183:59380 fd=221 name= age=1 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=26 qbuf-free=32742 argv-mem=10 obl=0 oll=0 omem=0 tot-mem=61466 ow=0 owmem=0 events=r cmd=client user=default numops=6
    
    Done
    

Kaynakları temizleme

Sonraki öğreticiye devam ederseniz, bu hızlı başlangıçta oluşturulan kaynakları tutabilir ve yeniden kullanabilirsiniz. Aksi takdirde, hızlı başlangıç örnek uygulamasıyla işiniz bittiyse ücretlerden kaçınmak için bu hızlı başlangıçta oluşturulan Azure kaynaklarını silebilirsiniz.

Önemli

Bir kaynak grubunu silme işlemi geri alınamaz ve kaynak grubunun ve içindeki tüm kaynaklar kalıcı olarak silinir. Yanlış kaynak grubunu veya kaynakları yanlışlıkla silmediğinizden emin olun. Bu örneği tutmak istediğiniz kaynakları içeren mevcut bir kaynak grubunda barındırmak için kaynakları oluşturduysanız, kaynak grubunu silmek yerine her kaynağı tek tek silebilirsiniz.

  1. Azure portalında oturum açın ve Kaynak grupları’nı seçin.

  2. Ada göre filtrele metin kutusuna kaynak grubunuzun adını girin. Bu makaledeki yönergelerde TestResources adlı bir kaynak grubu kullanılmıştır. Sonuç listesindeki kaynak grubunuzda ... ve ardından Kaynak grubunu sil'i seçin.

    Azure Kaynak grubunu silme

  3. Kaynak grubunun silinmesini onaylayın. Onaylamak için kaynak grubunuzun adını girin ve Sil'i seçin.

  4. Birkaç dakika sonra kaynak grubu ve içerdiği kaynakların tümü silinir.

Örnek kodunu alma

GitHub'da Node.js hızlı başlangıcını edinin.

Sonraki adımlar

Bu hızlı başlangıçta, bir Node.js uygulamasından Redis için Azure Cache kullanmayı öğrendiniz. bir ASP.NET web uygulamasıyla Redis için Azure Cache kullanmak için sonraki hızlı başlangıca geçin.