51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1241|回复: 0
打印 上一主题 下一主题

【我分享】Redis与ssdb的用法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2014-12-30 13:35:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Redis与ssdb的用法
在工作中接触到了redis,Redis是一个非常高效的key-value的数据库,在项目中广泛使用,但是redis很明显的缺点是对于内存的处理,在项目上线之初,必须对内存规划合理,否则很容易出现内存爆了的现象,一般较合理的内存大小为电脑物理内存的3/5。
    redis提供了多种数据类型,我经常使用的为string 、hash、list、set、sorted set,基本能满足项目对于数据类型的要求。我们使用的是redis的Java客户端,提供了一系列针对redis命令对应的api。redis的持久化 提供了多种策略,但我们没有去做持久化,自己研究了下,AOF方式感觉是最可靠的,原理和mysql的二进制日志很类似,也是将操作信息记录下来写到文 件,从服务器去读取日志并执行操作。
    在平常内网开发中可能经常需要调整数据存储细节,所以如果之前的数据依然驻留在内存中,会导致很多功能无法正常运行,所以在调整细节之后,需要对redis数据库flushdb操作。
    redis与ssdb在某些场景很适合使用,比如某些数据在数据库中只能残留2分钟,类似YY频道T人,固定几分钟后才能进来,就可以使用setex key seconds value命令,之后判断是否过期可以通过exists key 命令。
    redis常用命令网站:http://redis.readthedocs.org/en/latest/   涵盖了redis的命令及demo.
    在搭ssdb前说redis,因为ssdb很好的兼容了redis的api。是redis的很好替代品。
    ssdb相对于redis来说有很多优点:是redis数据库的100倍容量,可以存储几十亿的数据量。相对redis来说,占用内存很少。所以自己也去下载了ssdb,以下是ssdb搭建的过程。
    环境:ubuntu14
           虚拟机A: 192.168.1.251
            虚拟机B: 192.168.1.252
            网关: 192.168.1.1
    我的两台虚拟机是分别装在不同的物理机上,但都采用的是桥接方式,ip地址都是在同一个ip段。
    在两台虚拟机下分别都在线安装下ssdb.
    wget --no-check-certificate
            unzip master
            cd ssdb-master
            make
            sudo make install
    这些在ssdb官网都能找到
    ssdb主从搭建其实非常之简单,你只需要在两台虚拟机ssdb安装目录下找到ssdb.conf.
    sudo vi ssdb.conf  
    修改server 下的ip为虚拟机默认的IP地址。
            虚拟机A:
                server:
                        ip:192.168.1.251
                        port:8888   //我端口没改,用默认
            虚拟机B:
                  server:
                        ip:192.168.1.252
                        port:8888
    这是最基本的配置。
    现在只要在A的基础上对于ssdb.conf下配置:
            replication:
                     slaveof:
                         # to identify a master even if it moved(ip, port changed)
                         # if set to empty or not defined, ip:port will be used.
                         id: svc_2
                         # sync|mirror, default is sync
                         type: sync
                         ip: 192.168.1.252
                         port: 8888
    注意:在以上的配置过程中,千万不要用空格键,使用tab.
    现在可以启动ssdb了。
    ./ssdb-server ssdb.conf
    之后就可以使用ssdb提供的命令行工具来操作了。
            虚拟机A:    ./ssdb-cli -h 192.168.1.251 -p 8888
            虚拟机B:    ./ssdb-cli -h 192.168.1.252 -p 8888

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-16 20:56 , Processed in 0.064366 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表