zoukankan      html  css  js  c++  java
  • net core,redis的安装和试用

    一、window上面安装reids

    在github上面下载,地址

    安装完成后,进入安装目录打开redis服务,

    这里双击Redis服务器即可启动Redis。

    二、安装redis可视化工具

    命令行操作redis非常不方便。下载安装redis客户端,下载地址:https://redisdesktop.com/download

    或者百度网盘:

    链接:https://pan.baidu.com/s/196WnRU-4uBcUNVi_2W7KJA
    提取码:8pwx
    三、配置redis连接

    打开redis.windows.conf文件,打开它,找到# requirepass foobared (#打头的表示此行是注释说明状态,去掉#就是配置状态),我们修改下,去掉#,配置一个密码

    目前就用他原始的

     

    打开客户端,连接服务器

    这里对Redis数据库的配置进行了详细说明,部分配置选项如下:

    daemonize:是否以后台进程运行,默认为no。Windows下不支持修改 。Linux平台下可以改为yes,这样就不用为了启动Redis而单独保留一个shell窗口。
    pidfile:如以后台进程运行,则需指定一个pid,默认为/var/run/redis.pid。Windows下不支持修改。
    bind:绑定主机IP,默认值为127.0.0.1(注释)
    protected-mode:以保护模式运行,默认yes
    port: 监听端口,默认为6379
    timeout: 超时时间,默认为300(秒)
    loglevel: 日志记录等级,有4个可选值,debug,verbose(默认值),notice,warning
    logfile: 日志记录方式,默认值为stdout
    databases: 可用数据库数,默认值为16,默认数据库为0
    save <seconds> <changes>: 指出在多长时间内,有多少次更新操作,就将数据同步到数据文件。这个可以多个条件配合,比如默认配置文件中的设置,就设置了三个条件。
    save 900 1 900秒(15分钟)内至少有1个key被改变
    save 300 10 300秒(5分钟)内至少有300个key被改变
    save 60 10000 60秒内至少有10000个key被改变
    rdbcompression: 存储至本地数据库时是否压缩数据,默认为yes
    dbfilename: 本地数据库文件名,默认值为dump.rdb
    dir: 本地数据库存放路径,默认值为 ./
    slaveof: <masterip> <masterport> 当本机为从服务时,设置主服务的IP及端口(注释)
    masterauth: <master-password> 当本机为从服务时,设置主服务的连接密码(注释)
    requirepass 连接密码(注释)
    maxclients: 最大客户端连接数,默认不限制(注释)
    maxmemory <bytes>: 设置最大内存,达到最大内存设置后,Redis会先尝试清除已到期或即将到期的Key,当此方法处理后,任到达最大内存设置,将无法再进行写入操作。(注释)
    appendonly: 是否在每次更新操作后进行日志记录,如果不开启,可能会在断电时导致一段时间内的数据丢失。因为redis本身同步数据文件是按上面save条件来同步的,所以有的数据会在一段时间内只存在于内存中。默认值为no
    appendfilename: 更新日志文件名,默认值为appendonly.aof(注释)
    appendfsync: 更新日志条件,共有3个可选值。no表示等操作系统进行数据缓存同步到磁盘,always表示每次更新操作后手动调用fsync()将数据写到磁盘,everysec表示每秒同步一次(默认值)。
    vm-enabled: 是否使用虚拟内存,默认值为no
    vm-swap-file: 虚拟内存文件路径,默认值为/tmp/redis.swap,不可多个Redis实例共享
    vm-max-memory: 将所有大于vm-max-memory的数据存入虚拟内存,无论vm-max-memory设置多小,所有索引数据都是内存存储的(Redis的索引数据就是keys),也就是说,当vm-max-memory设置为0的时候,其实是所有value都存在于磁盘。默认值为0。

     参考文献:https://www.jianshu.com/p/e90317668ae2

     四、注册redis

    在web.core里面model的PreInitialize中注册redis,代码如下

    //配置使用Redis缓存
                Configuration.Caching.UseRedis();
    
                //配置所有Cache的默认过期时间为2小时
                Configuration.Caching.ConfigureAll(cache =>
                {
                    cache.DefaultSlidingExpireTime = TimeSpan.FromHours(2);
                });
    
                //配置指定的Cache过期时间为10分钟
                Configuration.Caching.Configure("ControllerCache", cache =>
                {
                    cache.DefaultSlidingExpireTime = TimeSpan.FromMinutes(10);
                });

    在appsettings.json中添加

    "RedisCache": {
        "ConnectionString": "localhost:5001,password=foobared",
        "DatabaseId": "-1"
    
      },

    在代码中添加测试方法,注意要先依赖注入cacheManager

    public void TestRedis()
            {
                var list = _testRepository.GetAll();
                _cacheManager.GetCache("TestRedis").Set("test", list);
            }

    在redis中看可以查看我们插入的数据了

  • 相关阅读:
    Windows Azure Cloud Service (14) 使用Windows Azure诊断收集日志记录数据
    Windows Azure Cloud Service (13) 用Visual Studio 2010 将应用程序部署到Windows Azure平台
    Windows Azure Cloud Service (15) 多个VM Instance场景下如何处理ASP.NET Session
    Windows Azure Storage (5) Windows Azure Drive
    Windows Azure Storage (7) 使用工具管理Windows Azure Storage
    SQL Azure(二) SQL Azure vs SQL Server
    webbrowser的自动提交
    提取视频的背景声音的软件
    Listview列排序的bug原因
    两个奇怪的问题
  • 原文地址:https://www.cnblogs.com/liguix/p/12336187.html
Copyright © 2011-2022 走看看