Zapoznaj się z Redis i dowiedz się, jak zoptymalizować aplikacje Node dzięki temu potężnemu magazynowi danych.

Tworząc aplikację internetową, upewnij się, że jest ona skalowalna i wydajna. Aby to zrobić, musisz wziąć pod uwagę kilka zasad i koncepcji.

Redis to jedna z wielu technologii, które mogą pomóc poprawić wydajność aplikacji internetowych. Oferuje niezwykłe funkcje, których możesz użyć do zwiększenia wydajności dowolnej aplikacji internetowej.

Czym dokładnie jest Redis i jak zacząć go używać z aplikacjami internetowymi Node.js?

Co to jest Redis i kiedy należy go używać?

Redis to otwarty magazyn danych w pamięci typu klucz-wartość. Jest to elastyczna technologia, która może pełnić funkcję kolejki roboczej, bazy danych, pamięci podręcznej, menedżera sesji, brokera wiadomości i nie tylko.

Połączenie szybkości, wszechstronności i łatwości użytkowania Redisa sprawia, że ​​jest to bardzo cenne narzędzie w ekosystemie programistów.

Kiedy należy używać Redis?

Redis dobrze nadaje się do wielu zadań, ale należy uważać, aby używać go tylko wtedy, gdy ma to sens.

instagram viewer

Należy rozważyć użycie Redis w następujących scenariuszach:

  • Buforowanie: Redis to najpopularniejszy sposób implementacji pamięci podręcznej, który pomaga zapobiegać obciążeniu baz danych i poprawia ogólną wydajność.
  • Zarządzanie sesją: Przechowywanie i zarządzanie sesjami użytkowników w celu uwierzytelniania i zarządzania stanem jest bardzo łatwe dzięki Redis.
  • Tymczasowe przechowywanie danych: Redis pozwala przechowywać dane i usuwać je automatycznie po określonym czasie. To sprawia, że ​​jest to dobre narzędzie do przechowywania danych tymczasowych, takich jak np Tokeny internetowe JSON, kolejki do pracyitp.

Inne przypadki, w których należy rozważyć użycie Redis, obejmują implementację brokera komunikatów, optymalizację operacji na bazie danych, a nawet efektywnego przechowywania i uzyskiwania dostępu do struktur danych, takich jak listy, zbiory i hasze.

Jak używać Redis z Node.js

Node.js to popularna technologia do tworzenia wydajnych i skalowalnych aplikacji po stronie serwera. Możesz go używać w połączeniu z technologiami pomocniczymi, takimi jak Redis, aby uzyskać wysoką wydajność i skalowalność.

Redis obsługuje kilka języków. Możesz tego użyć do przechowywania danych w PHP I są znakomici klienci Redis dla Golang. Dwoma najpopularniejszymi klientami Redis dla Node.js są node-redis I ioredis.

Oba pakiety są dostępne przez np i są łatwe w użyciu. Główna różnica polega na tym node-redis jest oficjalnym klientem, podczas gdy społeczność poleca ioredis.

Łączenie z Redis z Node.js

Aby rozpocząć, musisz mieć zainstalowany Redis na swoim komputerze i skonfigurowane środowisko programistyczne Node.js. Sprawdź instrukcję instalacji na Redis.io zainstalować Redis w systemach Linux, macOS i Windows.

Musisz zainstalować preferowany pakiet SDK klienta Redis w swoim projekcie, aby móc łączyć się z Redis. W zależności od twoich preferencji (użyjemy node-redis), uruchom jedno z poniższych poleceń, aby zainstalować klienta Redis:

npm zainstaluj redis --save
npm install ioredis --save

Pierwsze polecenie instaluje node-redis, podczas gdy drugi jest instalowany ioredis.

Aby skonfigurować nowo zainstalowanego klienta, musisz upewnić się, że działa Redis. Możesz to zrobić, po prostu zaczynając redis-cli w twoim terminalu:

The świst polecenie pinguje serwer, aby potwierdzić, że działa, oraz a PONG odpowiedź w CLI oznacza, że ​​serwer działa poprawnie. Teraz utwórz redis.js plik w swoim projekcie Node i napisz w nim następujący kod, aby skonfigurować Redis:

konst redis = wymagać(„redyt”)

// zainicjuj przy użyciu domyślnej konfiguracji
konst RedisClient = redis.createClient()

konst połączRedis = asynchroniczny () => {
// łączymy się z redisem
czekać na RedisClient.connect()

//obsługa błędu
RedisClient.on('błąd', (błąd) => {
konsola.błąd(`Wystąpił błąd z Redis: ${błąd}`)
})

konsola.dziennik(„Redis połączył się pomyślnie...”)
}

Powyższy kod inicjuje nowego klienta Redis w aplikacji. The utwórz klienta Funkcja pakietu redis umożliwia utworzenie klienta przy użyciu określonych parametrów.

Możesz określić hosta, port, nazwę użytkownika, hasło lub ciąg połączenia albo użyć wartości domyślnych. Na przykład, node-redis zacznie działać na localhost, na porcie 6379, domyślnie.

Oto kilka sposobów, w jakie możesz użyć utwórz klienta funkcjonować:

// używając parametrów połączenia
konst RedisClient = redis.createClient("ponownie przeslij://127.0.0.1:6379")

// używając obiektu parametru
konst RedisClient = redis.createClient({
gniazdo elektryczne: {
gospodarz: "127.0.0.1",
Port: "6379"
},
nazwa użytkownika: „Twoja nazwa użytkownika redis”,
hasło: "Twoje hasło"
})

Używaj bezpiecznych instancji Redis w środowisku produkcyjnym. W takim przypadku albo masz zabezpieczenie Adres URL ciąg do połączenia lub użyj parametrów pokazanych powyżej. Niezależnie od przypadku, zawsze pamiętaj, aby poświadczenia nie znajdowały się w kodzie i zamiast tego używaj zmiennych środowiskowych.

Wykonywanie podstawowych operacji Redis w Node.js

Poniższy kod łączy się z Redis przy użyciu połączRedis powyższą funkcję i demonstruje niektóre podstawowe operacje, które możesz wykonać w Redis z aplikacji Node.

konst testRedis = asynchroniczny () => {
czekać na połączRedis()

// Ustaw i pobierz wartość
czekać na RedisClient.set("nazwa", „Timmy”)
konst getCommand = czekać na RedisClient.get("nazwa")
konsola.log (getCommand)

// Natychmiast usuń wartości lub zaplanuj ich wygaśnięcie
// za kilka sekund
czekać na RedisClient.del("nazwa");
czekać na RedisClient.setEx("Lokalizacja", 60, "Lagos")

// Wciśnij na przód lub tył listy
czekać na RedisClient.lPush("dni", "Poniedziałek")
czekać na RedisClient.rPush("dni", "Wtorek")
czekać na RedisClient.lPush("dni", "Środa")
konst tablica dni = czekać na RedisClient.lRange("dni", 0, -1)
// drukuje [ 'środa', 'poniedziałek', 'wtorek' ]
konsola.log (tablica dni)

// Usuń element z tyłu lub z przodu listy
czekać na RedisClient.rPop("dni")
czekać na RedisClient.lPop("dni")
konst newDaysArray = czekać na RedisClient.lRange("dni", 0, -1)
// drukuje [ 'poniedziałek' ]
konsola.log (newDaysArray)
}

testRedis()

Zwróć uwagę na użycie asynchroniczny I czekać na Tutaj. Dzieje się tak, ponieważ wszystkie funkcje działają asynchronicznie i zwracają obietnice, więc jeśli potrzebujesz ich wyników natychmiast, ważne jest, aby to zrobić czekać na ich.

Powyższy kod pokazuje tylko niektóre podstawowe operacje, które możesz wykonać w Redis z poziomu aplikacji Node.js. Istnieje wiele innych poleceń i koncepcji, którym warto się przyjrzeć.

The Polecenia Redisa sekcji w pliku README znajdującym się na node-redisGitHub repozytorium jest dobrym miejscem do znalezienia wszystkich innych poleceń i tego, co robią.

Użyj Redis do tworzenia wydajnych aplikacji

Wykorzystanie mocy Redis umożliwia programistom tworzenie wysoce wydajnych aplikacji po stronie serwera. Dzięki przechowywaniu danych w pamięci Redis oraz rozbudowanym strukturom danych i poleceniom aplikacje mogą osiągnąć niezwykłą optymalizację wydajności.

Zdecydowanie powinieneś rozważyć integrację Redis z następną aplikacją Node.js, aby zwiększyć wydajność aplikacji i zapewnić lepszą obsługę.