Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Jakie są podstawowe różnice między select, epoll, kqueue i evport?

Ogólnie rzecz biorąc, wszystkie podsystemy Async I/O mają różne elementy wewnętrzne, ale w obecnym konkretnym przypadku te konkretne biblioteki Async I/O są używane do obsługi jak największej liczby platform. To znaczy:

  • przenieś =Solaris 10
  • epolacja =Linux
  • kolejka =OS X, FreeBSD
  • wybierz =zwykle instalowany na wszystkich platformy jako fallback

Evport , Epoll i KQueue mieć O(1) złożoność algorytmu wyboru deskryptora i wszystkie one wykorzystują wewnętrzne struktury pamięci w przestrzeni jądra. Mogą również służyć dużo (setki tysięcy) deskryptory plików.

Oprócz innych, select może obsługiwać tylko do 1024 deskryptory i wykonuje pełne skanowanie deskryptorów (więc za każdym razem, gdy iteruje wszystkie deskryptory, aby wybrać jeden do pracy), więc złożoność jest O(n) .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Szybszy sposób iteracji wszystkich kluczy i wartości w redis db

  2. Wysyłanie wiadomości do grup w Django Channels 2

  3. Czy istnieje ograniczenie liczby argumentów, które mogą obsłużyć polecenia redis, takie jak ZADD lub HMGET?

  4. Problemy z uruchomieniem instancji OAuthd

  5. Aby rozpocząć ładowanie YCSB z włączoną opcją klastra dla REDIS