猿问

Java自带的数据结构(如HashMap,BitSet等)做缓存和NoSQL

我了解的差别有:

  • 自带的数据结构:不用和缓存服务器建立通信,效率可能会更高?

  • NoSQL:集群环境下,业务服务器的缓存数据不能共享,存在资源浪费。而NoSQL的数据可以共享给业务服务器。

不知道还有没有其他差别,主要是发现现在的项目中部署了多台服务器,但是每台服务器的缓存数据都是一样的,而且请求是不走数据库的,有个定时任务会去同步数据库中的数据到缓存中。如果仅仅为了提高系统的QPS,是否应该使用NoSQL去做缓存?


胡子哥哥
浏览 905回答 5
5回答

精慕HU

这要看数据量的大小,在小数量的条件下,使用自带数据结构是成本最小、效率最高的选择。在大数据量的条件下,必定使用现成的noSql服务,自已编写的组件或许会有致命的BUG也不一定,久经考验的软件才是我们的好选择。而且这些软件都具备了大数据量下必须要有的功能。

蝴蝶刀刀

都不好,最好用缓存框架,比如:ehcache

小唯快跑啊

数据量很小的才会用数据结构缓存,毕竟是放在内存的,数据量大的肯定只能用nosql了
随时随地看视频慕课网APP

相关分类

Java
我要回答