Redis to otwarty (licencjonowany przez BSD) magazyn struktury danych w pamięci, używany jako baza danych, pamięć podręczna i broker komunikatów. Redis udostępnia struktury danych, takie jak ciągi znaków, skróty, listy, zbiory, posortowane zestawy z zapytaniami o zakres, mapy bitowe, hiperlogogi, indeksy geoprzestrzenne. Redis ma wbudowaną replikację, skrypty Lua, eksmisję LRU, transakcje i różne poziomy trwałości na dysku oraz zapewnia wysoką dostępność za pośrednictwem Redis Sentinel i automatycznego partycjonowania za pomocą klastra Redis.

Na tych typach można wykonywać niepodzielne operacje, takie jak dołączanie do łańcucha; zwiększanie wartości w skrócie; wypychanie elementu na listę; przecięcie zbioru obliczeniowego, suma i różnica; lub zdobycie członka o najwyższym rankingu w posortowanym zestawie.

Aby osiągnąć najwyższą wydajność, Redis współpracuje z zestawem danych w pamięci. W zależności od przypadku użycia można utrwalać dane, okresowo zrzucając zestaw danych na dysk lub dołączając każde polecenie do dziennika dyskowego. Możesz również wyłączyć utrwalanie, jeśli potrzebujesz tylko bogatej w funkcje, sieciowej pamięci podręcznej w pamięci.

Redis obsługuje również replikację asynchroniczną, z bardzo szybką, nieblokującą pierwszą synchronizacją, automatycznym ponownym połączeniem z częściową ponowną synchronizacją przy podziale sieci.

Domyślnie Redis przechowuje dane w pamięci, domyślnie z okresowym utrwalaniem dysku. Ponieważ Redis utrwala dane na dysku, może służyć jako klasyczna baza danych w wielu przypadkach, a także jako pamięć podręczna. Gdy jest pełny, Redis zwróci klientowi błąd, ale można go skonfigurować jako pamięć podręczną, aby wysyłać starsze i mniej ważne dane, gdy napływają nowe dane. W obu przypadkach głównym ograniczeniem jej wykorzystania jest rozmiar dostępnej pamięci.

Redis jest powszechnie używany jako pamięć podręczna do przechowywania często używanych danych w pamięci, dzięki czemu aplikacje mogą reagować na użytkowników. Dzięki możliwości określenia, jak długo chcesz przechowywać dane i które dane mają być eksmitowane jako pierwsze, Redis udostępnia szereg inteligentnych wzorców buforowania.

Jaki wpływ na szybkość ładowania strony ma Redis?

W zależności od środowiska webowego, możemy zauważyć zwiększoną wydajność aplikacji WordPress, co przekłada się na niższe czasy ładowania poszczególnych podstron oraz unormowanie maksymalnych czasów ładowania.
Każdy test trwał 60 minut.

Nazwa.pl – Apache – Redis włączony (ON) #1

  • Średni czas ładowanie strony – 265 milisekund

Nazwa.pl – Apache – Redis włączony (ON) #2

Zauważalny problem z ładowaniem strony głównej, ale reszta podstron ładuje się bezbłędnie. Wina po stronie serwera?

  • Średni czas ładowanie strony – 455 milisekund

Nazwa.pl – Apache – Redis włączony (ON) #3

Kontynuacja problemu z ładowaniem strony głównej.

  • Średni czas ładowanie strony – 361 milisekund

Nazwa.pl – Apache – Redis włączony (ON) #4

  • Średni czas ładowanie strony – 270 milisekund

Nazwa.pl – Apache – Redis wyłączony (OFF) #1

  • Średni czas ładowania strony – 358 milisekund

Nazwa.pl – Apache – Redis wyłączony (OFF) #2

  • Średni czas ładowania strony – 416 milisekund

Webd.pl – Litespeed – Redis włączony (ON) #1

  • Średni czas ładowania strony – 451 milisekund

Webd.pl – Litespeed – Redis włączony (ON) #2

  • Średni czas ładowania strony – 367 milisekund
  • Niski czas interwału czasowego na pierwszym obrazku

Webd.pl – Litespeed – Redis wyłączony (OFF) #1

  • Średni czas ładowania strony – 484 milisekund

Webd.pl – Litespeed – Redis wyłączony (OFF) #2

  • Średni czas ładowania strony – 402 milisekund

Mydevil.net – Apache/N-G-I-N-X – Redis włączony (ON) #1

  • Średni czas ładowania strony – 398 milisekund

Mydevil.net – Apache/N-G-I-N-X – Redis włączony (ON) #2

  • Średni czas ładowania strony – 392 milisekund
  • Wykres z prawej strony ma rozciągniętą skalę do 10000 milisekund, podczas, gdy wynik z testu #1 ma skale 3000 milisekund. Niech was to nie zmyli.

Mydevil.net – Apache/N-G-I-N-X – Redis wyłączony (OFF) #1

  • Średni czas ładowania strony – 475 milisekund

Cyber_folks.pl – Litespeed – Redis włączony (ON) #1

  • Średni czas ładowania strony – 513 milisekund

Cyber_folks.pl – Litespeed – Redis włączony (ON) #2

  • Średni czas ładowania strony – 524 milisekund

Cyber_folks.pl – Litespeed – Redis wyłączony (OFF) #1

  • Średni czas ładowania strony – 561 milisekund

Szczegółowe wyniki znajdziecie w Google Docs.

Similar Posts

5 1 ocena
Zostaw ocenę!
Subscribe
Powiadom o
guest
10 komentarzy
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Robert
Robert
2 miesięcy temu

Ciekawe porównanie. Kiedy wykonasz nowe testy dla wszystkich dostawców z Redisem? Bo widać że nie korzystając z Redisa pokrzywdziłeś wszystkich którzy korzystają z Apacha/Nginxa faworyzując konfiguracje oparte o Litespeed.

Robert
Robert
Reply to  Maciej Wiśniewski
2 miesięcy temu

Powinieneś wykorzystać wszystkie metody optymalizacji, które dostarczają firmy hostingowe. Inaczej Twoje porównanie nie ma sensu, gdyż celowo obniżasz wydajność tych firm, które dostarczają Redis/Memcached, faworyzując w teście jedynie moduł i cache w Litespeed, który wykorzystuje podobne cachowanie do Redis/Memcached. Skoro zastosowanie Redis/Memcached przyspiesza działanie serwisów to powinna go udostępniać każda firma hostingowa.

Robert
Robert
Reply to  Maciej Wiśniewski
2 miesięcy temu

Bazując na dokumentacji, Litespeed dokonuje jednak optymalizacji zapytań do bazy:

„ Database Optimization

Keeps the WordPress database slim, trim, and as efficient as possible.

Speeds up database queries by eliminating the clutter that accumulates over time.
Eliminates the need for a separate database optimization plugin.„

Jeżeli udało Ci się aktywować Redisa w powyższych firmach i wykonać testy to chyba jego aktywacja nie było aż taka trudna. Tym bardziej że przecież musiałeś również ustawić wszystkim Opcache i tą samą wersję PHP. A skoro dzisiaj już wiesz że wyniki z Redis są lepsze to powinieneś je opublikować w głównym zestawieniu. W końcu celem tych testów jest sprawdzenie szybkości hostingu w każdej firmie, bazując na narzędziach dostępnych w pakiecie. Może zachęci to inne firmy do wdrożenia Redis/Memcached?

Robert
Robert
Reply to  Maciej Wiśniewski
2 miesięcy temu

Oczywiście że optymalizacja w Redis i Litespeed to nie to samo, ale skoro nie chciałeś korzystać z cachowania zapytań na Litespeed, to nie powinieneś wykorzystywać wtyczki lscache która jednak korzysta z optymalizacji zapytań do bazy danych. Dziwie się wiec, że po zrobieniu testów z Redis u tych dostawców którzy go oferują, nie przedstawiasz tych wyników w głównym zestawieniu. To przecież nie jest ich wina, że od razu nie włączyłeś cache, który był dostępny w planie hostingowym. Wcześniej można by to odczytać jako Twoją niewiedzę, ale teraz to już celowe działanie aby nie przedstawić najlepszego wyniku u tych dostawców.

Robert
Robert
Reply to  Maciej Wiśniewski
2 miesięcy temu

Skoro ci dostawcy dostarczają Redis/Memcached to powinieneś go u nich używać. Bo inaczej to faworyzujesz hostingi z Litespeed które robią podobne cachowanie podobne do Redis/Memcached tyle, że na poziomie cache serwera. Skoro Redis/Memcached przyspiesza działanie stron, to powinien być udostępniany przez wszystkie firmy hostingowe.

ps. Pisze drugi raz komentarz, bo za pierwszym razem chyba mi go nie przyjęło.

Michał
Michał
2 miesięcy temu

Super zestawienie. Dzięki!