我有一个超过2 TB数据的应用程序要存储在缓存中,数据将使用NodeJS API进行访问。对于一个更好的选择NodeJS应用程序,Hazelcast或Redis(或RedisLabs)?考虑以下标准?
据我所知,在基准测试中,由于多线程实现,Hazelcast的速度更快,而且可扩展性也很快。但是我们能否使用NodeJS有效利用这些优秀的功能(需要设置数据结构)?最后,我们可以在RedisLabs中有多个分片,就像多个线程或进程在各自的数据块上工作一样,在这种情况下,我认为Hazelcast由于多线程特性而对Redis来说是正确的,但对于RedisLabs则不然,这有什么意见吗?
答案 0 :(得分:5)
Hazelcast Node.js client实际上确实存在,目前提供以下功能
在比较Hazelcast和Redis服务器端功能方面,您可以找到全面的文档here。
谢谢
答案 1 :(得分:2)
好吧,我建议如果你使用非常复杂的数据处理/处理你应该使用HazelCast,并且本质上nodejs是单线程的,所以如果你使用它只是为了存储键值不要随它。
您可以使用(NodeJS + hazelcast)的官方API,但功能非常有限,仅使用KeyVal
如果你只是使用缓存作为键值存储Redis是好的,快速的,免费的!它可以处理大量数据以及一些额外的设置看看 http://redis.io/topics/partitioning
在支持定价方面,RedisLabs的成本更低,如果您使用Redis Redisson,它可以为您提供Hazelcast使用的所有数据结构:)
BitSet,Set,Multimap,SortedSet,Map,List,Queue,BlockingQueue,Deque,BlockingDeque,Semaphore,Lock,AtomicLong,CountDownLatch,Publish / Subscribe,Bloom filter,Remote service,Spring cache,Executor service,Live Object service ,调度程序服务
RedisLabs拥有更多的用户群+贡献者,如果你是comapre用户,HazelCast会少一些,所以如果你的数据只是2TB,那么它只是键值.. Redis是最好的