• .net 连接Redis


    Redis安装

    公司业务需要,弄了个类似于消息队列的东西,由客户端一直轮询取得信息。之前一直是走表的,但是效率以对表的使用都太过频繁,想试着用一下Redis,看看效率怎么样。

    首先是安装Redis,这个是从github上面下载下来的,最新的3.x的版本,放到服务器上面,然后安装。

    安装期间应该(忘记了)会出现让选择是否以服务的形式安装,如果出现这样的选择,就选是。

    然后在系统服务里面就可以找到这个服务了,应该默认是已经开启了。

    打开cmd(如果之前打开,请关掉重新开,因为之前path变量 没有加载进来)。输入redis_cli,就ok了,会自动连接到服务器自己的Redis数据库中。可以试一下

    >set name ensleep

    然后再

    >get name

    “ensleep”

    这就说明已经运行正常。

    Redis设置

    Redis的设置非常简单,对比IIS而言,如下:

    持久化

    Redis的持久化是通过文件来的,一种是AOF,另一种是RDB。

    好多教程里面都说持久化设置在redis.config里面,但是,windows下的配置文件却是redis.windows-service.conf,打开这个文件,作如下配置修改

    AOF

    这种方式是备份模式,每条指令都会被转存一份(linux下通过fork(),windows下通过内存分布映射)到文件中,而且每次都是追加的,这使得备份的数据时刻最新,但是,也因为是一直追加,文件会越来越大,而且当执行一次恢复之后,可能会产生上一次的指令未被备份的情况。配置的操作如下:

    appendonly yes       #启用AOF持久化方式
    appendfilename appendonly.aof #AOF文件的名称,默认为appendonly.aof
    # appendfsync always #每次收到写命令就立即强制写入磁盘,是最有保证的完全的持久化,但速度也是最慢的,一般不推荐使用。
    appendfsync everysec #每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中,是受推荐的方式。
    # appendfsync no     #完全依赖OS的写入,一般为30秒左右一次,性能最好但是持久化最没有保证,不被推荐。

    上面的配置来自网络,

    第一条是说明启动AOF的方式;第二条设置的是文件名,这个文件会变得很大;第三到五条则是写入的触发点,因为是消息队列,我选的是everysec,怎么说呢,因为我觉得如果每次都写到文件里面,是不是有点太过分了,而且如果系统出错,前一秒内的数据丢失其实也是很正常的,哪怕你是开了always,你敢说你在写io时候不断电?

    AOF还有一种原因就是我上面讲的,会出现文件越来越大的情况,这种情况我们也可以通过一个设置来改变。

    本方法的目的是在将AOF文件重新整理,使其变得小一些。去掉那个无效的指令。

    no-appendfsync-on-rewrite yes   #在日志重写时,不进行命令追加操作,而只是将其放在缓冲区里,避免与命令的追加造成DISK IO上的冲突。
    auto-aof-rewrite-percentage 100 #当前AOF文件大小是上次日志重写得到AOF文件大小的二倍时,自动启动新的日志重写过程。
    auto-aof-rewrite-min-size 64mb  #当前AOF文件启动新的日志重写过程的最小值,避免刚刚启动Reids时由于文件尺寸较小导致频繁的重写。

    先把第一条打开,即使用异步的重写,然后设置第二条在超出原来百分多少后重写日志,第三条是只有在满足那样的大小的情况下,才执行重写操作,与第二条是逻辑与的条件关系。

    RDM

    这种方式类似于定时备份,就是按设定的周期将数据的内存页转为rdb文件,存下来。由于是整个内存文件,所以比较完整,但是不能保证是最新的。配置的操作如下:

    save 900 1    #当有一条Keys数据被改变时,900秒刷新到Disk一次
    save 300 10   #当有10条Keys数据被改变时,300秒刷新到Disk一次
    save 60 10000 #当有10000条Keys数据被改变时,60秒刷新到Disk一次

    网上的建议是两种方式都使用,而系统在重启的时候使用加载优先加载rdm,然后再核对AOF。我也是如此,将两者开打开了。

    下面就是开启Redis服务,高枕无忧,开始使用了。因为这已经不是关系数据库了,那些个条件查询之类的,不能再奢望了。

  • 相关阅读:
    ckeditor 上传图片
    过滤html else <p>
    目录遍历
    android小知识之SparseArray(HaspMap替换)
    android小知识之邮箱地址输入自动完成
    android小知识之EditText输入框之值监控以及类型限制(数字,英语字母,下划线,是否为星号密码)
    android小知识之圆角ListView
    android小知识之多个listview在同一界面只有item高亮
    如何取消一个本地svn目录与svn的联系(即恢复原有图标等)
    android小知识之意图(intent)
  • 原文地址:https://www.cnblogs.com/ensleep/p/4923285.html
Copyright © 2020-2023  润新知