前言:近些年因为互联网高速发展,用户对高并发的要求越来越高,特别是现在要进入5G网络时代,我们再也没有所谓的借口去指责运营商网络限制了我们的用户体验,特别是那些纯动态网站/商城,性能几乎决定了它们能否继续生存下去,消费者再也不能被轻易忽悠
我们都知道,内存的读写速度远远高于磁盘的读写速度,而我们并不是所有的数据都需要结构化,或者必须即时结构化,所以,在这种思路下,NoSQL数据库应运而生,目前许多大型互联网项目都会选用MySQL(或任何关系型数据库) + NoSQL的组合方案:
适用场景:
关系型数据库适合存储结构化数据,如用户的帐号、地址等,因为这些信息要求高度精确一致,可以预见数据增长,并且需要进行结构化查询
NoSQL数据库适合存储非结构化数据,如文章、评论等,因为这些信息要求超高速展现,海量增长同时又只需要做一些模糊处理,如全文检索
Redis作为NoSQL(Not Only SQL)的重要代表,自然有他的优点:
1、作为一个key-value数据库,他支持几乎所有的数据类型:包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)
2、可以定期将更新的数据写入磁盘或者把修改操作写入追加的记录文件,这样用户可以很好的进行备份和恢复
3、支持绝大多数主流开发语言,如Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便
4、完全实现了发布/订阅机制,使得主从同步更加如鱼得水,可订阅一个频道并接收主服务器完整的消息发布记录
5、靠山强大,他的后台是VMWare.....
好了,废话了这么多,我们先来个小栗子,写个Helloworld
第一步,安装Redis数据库,Redis的数据库文件超级小,不到5M,而且有绿色免安装版,下载地址:
https://github.com/MSOpenTech/redis/releases,下载完解压缩,可以打开CMD命令窗口启动它的服务端和客户端,也可以直接点击exe文件启动
CMD命令:
Server端:
另开一个CMD窗口:
EXE文件:
因为我们这里是用Java来测试Redis功能,所以只需要启动Server端即可
第二步:引入依赖包
第三步:编写一个HelloWorld测试程序
输出结果:
有需要资料的可以加群:1023705513