3、Redis系统管理

1、适合全体类型的常用命令

(1)EXISTS / DEL
EXISTS key :判断一个key是否存在;存在返回 1,否则返回0。
DEL key :删除某个key,或是一系列keyDEL key1 key2 key3 key4。成功返回1,失败返回0(key值不存在)。

(2)TYPE / KEYS
TYPE key:返回某个key元素的数据类型 ( none:不存在,string:字符,list,set,zset,hash),key不存在返回空。
KEYS key—pattern :返回匹配的key列表 (KEYS foo*:查找foo开头的keys)

(3)RANDOMKEY / CLEAR
RANDOMKEY : 随机获得一个已经存在的key,如果当前数据库为空,则返回空字符串。
CLEAR :清除界面。

(4)RENAME / RENAMENX
RENAME oldname newname:改key的名字,新键如果存在将被覆盖
RENAMENX oldname newname:更改key的名字,如果名字存在则更改失败

(5) DBSIZE
DBSIZE :返回当前数据库的key的总数

2、Redis 时间相关命令

(1)限定key生存时间
EXPIRE:设置某个key的过期时间(秒),(EXPIRE bruce 1000:设置bruce这个key1000秒后系统自动删除)
注意:如果在还没有过期的时候,对值进行了改变,那么那个值会被清除。

(2)查询key剩余生存时间
TTL key:查找某个key还有多长时间过期,返回时间秒

(3)清除key
FLUSHDB:清空当前数据库中的所有键
FLUSHALL:清空所有数据库中的所有键

3、Redis设置相关命令

(1)CONFIG GET / CONFIG SET
CONFIG GET:用来读取运行Redis服务器的配置参数。
CONFIG SET:用于更改运行Redis服务器的配置参数。
AUTH : 认证密码

注意:
可以经过修改Redis的配置文件redis.conf修改密码。
CONFIG GET命令是以list的key-value对显示的。

(2)重置报告
CONFIG RESETSTAT:重置数据统计报告,通常返回值为‘OK’。

4、查询信息

(1)INFO [section] :查询Redis相关信息。 section部分可为以下选项,若命令参数为空,info命令返回所有信息。
1. server: Redis server的常规信息
2. clients: Client的连接选项
3. memory: 存储占用相关信息
4. persistence: RDB and AOF 相关信息
5. stats: 常规统计
6. replication: Master/slave请求信息
7. cpu: CPU 占用信息统计
8. cluster: Redis 集群信息
9. keyspace: 数据库信息统计
10. all: 返回所有信息
11. default: 返回常规设置信息

一、CacheCloud是做什么的CacheCloud提供一个Redis云管理平台:实现多种类型(Redis Standalone、Redis Sentinel、Redis Cluster)自动部署、解决Redis实例碎片化现象、提供完善统计、监控、运维功能、减少开发人员的运维成本和误操作,提高机器的利用率,提供灵活的伸缩性,提供方便的接入客户端。二、CacheCloud提供哪些功能监控统计:  提供了机器、应用、实例下各个维度数据的监控和统计界面。一键开启:  Redis Standalone、Redis Sentinel、Redis Cluster三种类型的应用,无需手动配置初始化。Failover:  支持哨兵,集群的高可用模式。伸缩:        提供完善的垂直和水平在线伸缩功能。完善运维:    提供自动运维和简化运维操作功能,避免纯手工运维出错。方便的客户端:方便快捷的客户端接入。元数据管理:    提供机器、应用、实例、用户信息管理。流程化:      提供申请,运维,伸缩,修改等完善的处理流程三、CacheCloud解决什么问题1.部署成本       Redis多机(Redis-Sentinel, Redis-Cluster)部署和配置相对比较复杂,较容易出错。例如:100个redis数据节点组成的redis-cluster集群,如果单纯手工安装,既耗时又容易出错。2.实例碎片化       作为一个Redis管理员(可以看做redis DBA)需要帮助开发者管理上百个Redis-Cluster集群,分布在数百台机器上,人工维护成本很高,需要自动化运维工具。3. 监控、统计和管理不完善       一些开源的Redis监控和管理工具,例如:RedisLive(Python)、Redis Commander(Node.js),Redmon(Ruby)无论从功能的全面性(例如配置管理,支持Redis-Cluster等等)、扩展性很难 满足需求。4. 运维成本       Redis的使用者需要维护各自的Redis,但是用户可能更加善于使用Redis实现各种功能,但是没有足够的精力和经验维护RedisRedis的开发人员如同使用Mysql一样,不需要运维Mysql服务器,同样使用Redis服务,不要自己运维RedisRedis由一些在Redis运维方面更有经验的人来维护(保证高可用,高扩展性),使得开发者更加关注于Redis使用本身。5. 伸缩性       本产品支持Redis最新的Redis-Sentinel、Redis-Cluster集群机构,既满足Redis高可用性、又能满足Redis的可扩展性,具有较强的容量和性能伸缩能力。6. 经济成本       机器利用率低,各个项目组的Redis较为分散的部署在各自服务器上,造成了大量闲置资源没有有效利用。7. 版本不统一       各个项目的Redis使用各种不同的版本,不便于管理和交互。四、CacheCloud提供的价值规模化自动运维: 降低运维成本,降低人为操作出错率。自由伸缩:      提供灵活的伸缩性,应用扩容/收缩成本降低,机器资源得到重复利用。团队提升,开源贡献:提升云产品开发设计经验,自己作为开发者和使用者,Eating your own dog food。五、CacheCloud在搜狐的规模每天100 亿次命令调用2T 的内存空间800 个Redis实例100 台机器六、CacheCloud环境需求Java 7Maven 3MySQLRedis 3七、CacheCloud快速开始1、初始化数据库       导入项目中cachecloud.sql初始化库表结构。默认插入admin超级管理员2、CacheCloud项目配置       使用了maven作为项目构建的工具,提供了 local.properties和online.properties两套配置作为测试、线上的隔离。 属性配置说明:属性名说明示例cachecloud.db.urlmysql驱动urljdbc:mysql://127.0.0.1:3306/cache-cloudcachecloud.db.usermysql用户名admincachecloud.db.passwordmysql密码admincachecloud.machine.username服务器用户名,用于ssh${your machine username}cachecloud.machine.password服务器密码,用于ssh${your machine password}web.portspring-boot内嵌tomcat启动端口80803、启动cachecloud系统    mvn spring-boot:run1. 构建:mvn -Ponline clean package2. 上传war包到特定目录下:如/opt/cachecloud-web3: 拷贝项目中的cachecloud-web.conf配置到/opt/cachecloud-web目录下,注意必须跟war包同目录才生效4. 作为linux服务启动:sudo ln -s /opt/cachecloud-web/cachecloud-web-1.0-SNAPSHOT.war /etc/init.d/cachecloud-web  /etc/init.d/cachecloud-web start(9999是tomcat的端口号,具体要参考第三节中的online.properties和local.properties中的web.port4、添加机器(1). 运行脚本:cachecloud项目中的cachecloud-init.sh脚本是用来初始化服务器的cachecloud环境,主要工作如下:(a). 创建cachecloud项目用户:因为cachecloud项目的部分功能(redis启动、服务器监控)是通过ssh完成的,所以这里的用户和密码要和项目中的相对应,具体详见第三节。(b). 创建cachecloud项目的工作目录、数据目录、配置目录、日志目录、redis安装目录、临时目录等等。(/opt/cachecloud/data、/opt/cachecloud/conf、/opt/cachecloud/logs、/opt/cachecloud/redis、/tmp/cachecloud)(c). 安装最新的release版本的Redis(2). 脚本执行(a). 使用root登录目标服务器。(b). 将cachecloud-init.sh脚本拷贝到目标服务器当前用户目录下。(c). 执行 sh cachecloud-init.sh ${yourusername}(d). 两次确认密码(e). 一路安装直到成功。(3). 建议和警告(a). 请在root用户下执行初始化脚本,因为初始化脚本涉及到了用户的创建等较高的权限。(b). 出于安全的考虑,所选的机器最好不要有外网IP地址。(c). 用户名和密码最好不要用cachecloud, 密码尽可能复杂。(d). 机器的ssh端口最好是22。(e). 请确保/opt/有足够的硬盘空间,因为/opt/cachecloud/data要存储RDB和AOF的持久化文件,如果硬盘过小,会造成持久化失败。 (如果硬盘确实很小,建议建立一个软链接到/opt/cachecloud/data,且保证软链接的目录也是username用户,一定要保证/opt /cachecloud的目录结构)(f). 脚本中目前使用的是redis-3.0.6,如有需要请自行替换,建议使用3.0 release以后的版本。(4). 添加机器进入管理员界面(http://ip:port/manage/total/list),进入机器管理,点击添加机器,添加机器信息是开通应用的基础。 标签:CacheCloud  redis
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值