【Redis】——初识(一)

小编从接触redis差不多有2年的时间了,但是从来没有写过redis的文章,因为最近在读关于这方面的书籍,所以先要写一系列的文章来让读者们了解一下,好了废话不多说,咱们进入正题。

【redis】

   Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。

    redis是一种Nosql数据库,Nosql全称是Not Only SQL,是一种不同于关系型数据库的数据库管理系统设计方式。对NoSQL最普遍的解释是“非关系型的”,强调Key-Value 存储和文档数据库的优点,而不是单纯的反对RDBMS. 

   redis数据类型:string、hash、list、set、sorted set(zset)

【其他数据库的比较】

  • 外部比较:

1、redis和mysql和MongoDB都有库的概念

2、redis无表和字段,mysql有表和字段(行和列),MongoDB无表有集合,无字段

redis(NoSQL) mysql(SQL) mongodb(NoSQL)
无表 集合
无字段 字段(列)

无字段

  • 内部比较:

【特性】

1、基于键值对的数据结构服务器

2、速度快:10万/秒,单线程

3、丰富的功能

  •     提供了键过期功能,可以用来实现缓存
  •     提供了发布订阅功能,实现消息系统
  •     支持lua脚本功能,创造出新的redis命令
  •     提供简单的事务功能,能在一定程度上保持事务特性
  •     提供了流水线(Pipeline)功能,客户端能将一批命令一次性传到redis,减少网络开销

4、简单稳定

  •     代码少
  •     单线程
  •     不需要依赖于操作系统中的类库,自己实现了事件处理的相关功能

5、客户端语言多

6、持久化

  •     RDB
  •     AOF
  •     将内存中的数据保存到硬盘中

7、主从复制

8、高可用和分布式

【使用场景】

       可以做什么

        1、缓存:键值过期时间设置;提供了灵活控制最大内存;和内存溢出后的淘汰策略

        2、排行榜系统
        3、计数器应用
        4、社交网络

        5、消息队列系统

        注意:冷数据不要放在redis中,热数据放在redis中事半功倍。(冷数据:查多写少。热数据:查少写多)

【建议】

  •         切勿当做黑盒使用,开发和运维同样重要
  •         阅读源码

【重大版本】

  •         奇数---非稳定版本
  •         偶数---稳定版本
  •         Redis3.0是重要的里程碑, 发布了Redis官方的分布式实现Redis Cluster。

【安装与使用】

1、官网安装与启动:

2、停止服务:redis-cli shutdown

注意:


           redis-cli shutdown nosave|save

3、安装后的工具文件


4、redis的配置:



好了小编的博客就先写到这里了。下面会有很多的惊喜哦!

猜你喜欢

转载自blog.csdn.net/tengliu6/article/details/80936320