Java项目-----redis-like

本文介绍了一个仿Redis实现的微型内存数据库项目,旨在解决MySQL与Memcached面临的问题。项目支持List和Hash数据结构的插入与查询,具备多线程提高并发效率,并基于Redis协议解析。通过测试,项目在功能上达到预期,但在性能上约为Redis的一半,未来改进点包括持久化存储和错误处理优化。
摘要由CSDN通过智能技术生成

项目背景

实际上MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,但是随着业务数据量的不断增加,MySQL就遇到了很多问题:

 

1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间。

2.Memcached与MySQL数据库数据一致性问题。

3.Memcached数据命中率低或down机,大量访问直接穿透到DB,MySQL无法支撑。

4.跨机房cache同步问题。

 

为了解决这些问题那么就应该考虑其他更适合业务处理的产品,所以也涌现出来很多NoSQL产品,如何正确使用好这些产品,最大的发挥其长处,这是我们呀深入思考和研究的问题,归根结底也就是要深入了解产品的定位,在实际应用中扬长避短.

面对这些不同类型的NoSQL产品,我们需要根据我们的业务场景选择最合适的产品。

Redis最适合所有数据in-memory(内存中)的场景,虽然Redis也提供持久化功能,但实际更多的是一个disk-backed(磁盘备份)的功能,跟传统意义上的持久化有比较大的差别,那么可能大家就会有疑问,似乎Redis更像一个加强版的Memcached,那么何时使用Memcached,何时使用Redis呢?

 

如果简单地比较Redis与Memcached的区别,大多数都会得到以下观点:

1 、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
2 、Redis支持数据的备份&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值