redis vs hazelcast [fermé]
Redis Vs Hazelcast Si mon application:
- avoir beaucoup de requêtes http (6.000 par minute, je collectionne les infos de clics) qui doivent être sauvegardées
- ont beaucoup de requêtes http qui interrogent les données précédemment sauvegardées.
mes Questions sont - Lequel entre Redis et Hazelcast devrais-je choisir pour stocker et interroger des données - lequel est le plus rapide pour lire et écrire? - lequel est le plus fiable? - Cassandra serait-elle une meilleure option?
réponse l'une des questions aide
5 réponses
nous sommes passés de redis à hazelcast pour nos besoins de mise en cache.
- Protostuff + Hazelcast est beaucoup plus rapide pour nous que
- Protostuff + Jedis (pooled) + Redis
Nous utilisons protostuff pour sérialiser les haricots qui sont coûteux à créer. Hazelcasts standard-serialization mechanism est beaucoup plus lent. Notre environnement est le poisson de verre 3.1.
Hazelcast ressemble à ils ont seulement des libs java, Redis a un pour chaque langue.
Vrai. Hazelcast fournit juste une API REST et une implémentation du protocole memcached.
Il est très pratique lib - Redisson. Il fournit des objets et des services Java distribués (BitSet
,BloomFilter
,Set
, SortedSet
,Map
,ConcurrentMap
,List
,Queue
,Deque
,BlockingQueue
,BlockingDeque
,ReadWriteLock
,Semaphore
,Lock
,AtomicLong
,CountDownLatch
,Publish / Subscribe
,RemoteService
,ExecutorService
,LiveObjectService
,ScheduledExecutorService
) sur le serveur Redis!
il supporte les modes cluster, sentinel, master/slave et single connection.
fonctionne Parfaitement dans le cloud et prend en charge AWS Elasticache et Azure Redis Cloud
voici quelques exemples de réussite de clients Redisson:
Déplacement de Hazelcast à Redis
verrouillage distribué avec Redis (Migration from Hazelcast)
à partir de 2017, Redis et Hazelcast offrent tous deux un stockage\scalable key\value hautement disponible. Avec des temps de réponse très rapides < 10ms.
Redis est unique en ce qu'il supporte d'autres structures de données comme les ensembles sored, les ensembles hash et un mécanisme pub\sub. C'est aussi extensible via lua scripting. Il est probablement le plus populaire et largement utilisé les deux produits. Surtout en dehors de l'écosystème Java.
Hazelcast est unique en ce qu'il peut être intégré dans un hôte Java processus, ce qui le rend idéal pour la construction de microservices stateful sans une dépendance de base de données externe. Il a également d'autres petites différences, comme la capacité d'obtenir un rappel d'une expiration de clé. Dans un sens, il fait moins dans l'ensemble, mais les quelques choses qu'il fait, il les fait mieux. Surtout si vous utilisez Java.
dans l'ensemble, il s'agit de solutions similaires conçues pour des cas d'utilisation similaires, comme la mise en cache de données externes, la création d'un backplane de communication ou un État de mémoire partagée pour un microservice étatique, ou peut-être même stocker (petites quantités de données d'affaires non relationnelles) avec un certain degré de durabilité.
pour décider lequel est le bon, il y a un problème à propos du fil client utilisé.
selon ceci test Hazelcast est meilleur que Redis si vous utilisez plus de thread. Peut-être que c'est une référence injuste de la part de l'entreprise, mais ça montre quelque chose à propos du filage.
Redis et Hazelcast sont des bases de données basées sur la mémoire, donc en théorie, ils devraient fournir la même vitesse et la même performance. En regardant les docs pour Hazelcast, vous obtiendrez un meilleur support avec Redis en raison de la grande quantité de bibliothèques pour interfacer avec la base de données. Hazelcast a l'air de n'avoir que des libs java, Redis en a un pour chaque langue.
reponses:
vous devrez le tester vous-même, autant que je puisse en dire autrement les comparaisons montrent que Redis est plus rapide l'un d'eux est ici, mais je ne dis pas que ces points de référence sont 100%
ils devraient être tous les deux fiables, mais je ne peux pas me porter garant pour Hazelcast.
Peut-être...
j'irais avec Redis, parce que je trouve que c'est le plus utilisable et il a une bonne documentation.