Redis使用(一):安装

Redis介绍

    redis通常用于“数据结构”服务器。它提供了一系列命令集来操作多种数据结构,可以通过“server-client”模式,基于TCP提供简单的协议进行访问。不同的进程可以通过一种共享的方式,查询和修改相同的数据结构对象。

    redis实现的数据结构有如下的一些特殊属性:

  • redis可以保存这些数据结构到磁盘,即使它们总是在服务器内存中修改或提供服务,这意味着redis更快且数据不容易丢失;
  • redis数据结构的实现非常强调内存的性能,和其他更高级别的编程语言相比,相同的数据结构redis占用更少的内存;
  • redis提供一些列类似数据库的特性,例如备份、集群、高可用和(tunable levels of durability)。

    另一个好的例子是可以把redis当做复杂版本的memcached,它不仅仅可以有SETS和GETS操作,还可以操作复杂的数据结构如Lists,Sets,顺序结构等等。

构建Redis

    Redis支持平台Linux, OSX, OpenBSD, NetBSD, FreeBSD,支持大小端架构,32bit和64bit系统。

    Linux系统下,通过如下步骤编译:

  • 简单构建:
% make
  • 构建32位程序:
% make 32bit
  • 通过下面方式构建测试工具:
%make test

修复依赖项或缓存问题

    redis有一些依赖项,放在“deps”目录中,但make指令不会自动重构这些依赖,即使这些依赖的源代码已经修改了。当你通过“git pull”更新了源码或者当依赖树中的代码被修改了,确保用下面的指令来清理一切并从头开始构建:

%make distclean

这将清理下面的库: jemalloc, lua, hiredis, linenoise。

修复构建32bit库的问题

     在构建32bit库之后,如果你又想重新构建64bit的库,你需要在Redis源码根目录中执行make distclean。

     当构建32bit的redis出错时,可以通过下面的方式修复:

* 安装 libc6-dev-i386 (also try g++-multilib).
* 用下面的指令替换 `make 32bit`:

% make CFLAGS="-m32 -march=native" LDFLAGS="-m32"

内存分配器

    在编译redis时,可以通过设置变量“MALLOC”来选择一个默认的分配器。在Linux下Redis默认的分配器是jemalloc,这样选择的目的是因为jemalloc能减少内存碎片问题。(默认编译的时候会将jemalloc编译到源码中)

    强制连接libc:

    % make MALLOC=libc

运行redis

    用默认配置运行:

    % cd src
    % ./redis-server

    如果想提供自己的redis.conf配置,可以添加参数运行:

   % cd src
    % ./redis-server /path/to/redis.conf

    也可以之前传递参数选项:

 % ./redis-server --port 9999 --replicaof 127.0.0.1 6379
 % ./redis-server /etc/redis/6379.conf --loglevel debug

测试redis

    可以用redis-cli来测试Redis,启动redis-server进程实例后,终端指令:

    % cd src
    % ./redis-cli
    redis> ping
    PONG
    redis> set foo bar
    OK
    redis> get foo
    "bar"
    redis> incr mycounter
    (integer) 1
    redis> incr mycounter
    (integer) 2
    redis>

    这里可以找到更多的命令介绍:http://redis.io/commands。

安装Redis

    为了安装Redis二进制文件到/usr/local/bin目录,执行:

    % make install

    可以使用下面指令安装到特定的目录:

make PREFIX=/some/other/directory install

    make install 指令仅仅安装了二进制文件到系统中,并没有在适当的地方配置初始脚本和配置文件。如果只是想玩耍一下Redis,这些配置并不需要,但是如果是安装到生产环境中,这里有个脚本可以配置这些东西(Ubuntu和Debian系统):

    % cd utils
    % ./install_server.sh

    脚本执行时,会向你询问一些问题,并将安装你需要的功能,然后将Redis服务作为后台守护进程,并随系统重启而自动启动,可以通过下面指令停止Redis服务:

/etc/init.d/redis_6379 stop

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值