zoukankan      html  css  js  c++  java
  • Redis轻快入门

    Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。

    一、安装Redis

    • Redis配置文件:/etc/redis.conf
    • Redis主程序:/usr/bin/redis-server
    • 客户端工具:/usr/bin/redis-cli
    • 默认监听端口:6379
    • 数据目录:/var/lib/redis
    • 服务脚本:/usr/lib/systemd/system/redis.service
    yum install redis											# 基于CentOS7的epel源
    

    二、连接Redis

    Redis的客户端命令工具为redis-cli,默认连接本地的Redis服务。
    如果需要远程连接则使用redis-cli -h HOST -p PORT -a PASSWD

    [root@cache1 ~]# redis-cli 
    127.0.0.1:6379> ping                            # 使用ping命令测试与服务的连接性
    PONG                                            # 服务端回复pong则说明网络连接没有问题
    

    三、Redis数据类型

    • String(字符串)

    string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。
    string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
    string类型是Redis最基本的数据类型,一个键最大能存储512MB。

    • Hash(哈希)

    Redis hash 是一个键值(key=>value)对集合。
    Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。

    • List(列表)

    Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。

    • Set(集合)

    Redis的Set是string类型的无序集合。
    集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。

    • zset(sorted set:有序集合)

    Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
    不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
    zset的成员是唯一的,但分数(score)却可以重复。

    四、获取帮助

    help @  + 双击tab						   # 双击tab会出现各种子命令的帮助
    
    help @string							# 字符串相关的配置
    help @list								# 列表相关的配置;列表类似于数组
    help @set
    help @hash
    ......
    

    五、List相关的命令

    其他几个数据类型比较简单,通过帮助就能获得命令的使用方法。最简单的办法就是百度。由于List相关的命令仅仅看帮助的话很难理解一些操作,所以拿出来单独讲讲最常用的几个命令

    示例:

    127.0.0.1:6379> LPUSH stu aubin					# LPUSH,向列表左侧添加元素,列表不存在自动创建
    (integer) 1
    127.0.0.1:6379> RPUSH stu 22 					# RPUSH,向列表右侧添加元素,列表不存在则自动创建
    (integer) 2
    127.0.0.1:6379> RPUSHX  stu nan					# RPUSHX,如果列表存在则右侧添加元素
    (integer) 3
    127.0.0.1:6379> LPUSHX  stu linux				# LPUSHX,如果列表存在则左侧添加元素
    (integer) 4
    127.0.0.1:6379> LRANGE stu 0 10 				# LRANGE,显示名为stu的列表的0-10个值
    1) "aubin"
    2) "22"
    3) "nan"
    4) "linux"
    
    LPOP stu								# 左弹,删除名为stu列表中的第一个元素
    RPOP stu								# 右弹,删除名为stu列表中的最后一个元素
    LREM stu  3  aubin						# 从头到尾删除3个值为aubin的元素
    LREM stu  -3  aubin						# 从尾到头删除3个值为aubin的元素
    LREM stu  0  aubin						# 删除所有值为aubin的元素
    
  • 相关阅读:
    *** 82 删除排序链表中的重复元素II
    83 删除排序链表中的重复元素
    61 旋转链表
    ASP.NET MVC3 ModelState.IsValid为false的问题
    ServletContext
    ServletConfig
    Servlet线程安全
    Servlet的一些细节(2)
    Servlet的一些细节(1)
    Servlet的接口实现类
  • 原文地址:https://www.cnblogs.com/aubin/p/7846114.html
Copyright © 2011-2022 走看看