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.
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ę.