• redis(2)-hiredis-centos-ubuntu 下安装和使用


    ubuntu 下安装vsftpd
     

    1. sudo apt update
    2. sudo apt install vsfptd
    3. sudo systemctl status vsftpd
    4. vim /etc/vsftpd.conf
    5. local_enables=YES
    6. write_enable=YES
    7. anonymous_enable=YES
    8. anon_mkdir_write_enable=YES //允许匿名用户在FTP上创建目录
    9. anon_upload_enable=YES //允许匿名用户在FTP服务器上上传文件
    10. anon_other_write_enable=YES //开启匿名用户的其他写权限

    Filezilla 下匿名登录
     

    下载: FileZilla - The free FTP solution
    匿名登录:anonymous :

    /srv/ftp

     

    1..redis 安装+数据类型

    1.缺少libQtGui.so.4的库

    1. sudo add-apt-repository ppa:rock-core/qt4
    2. sudo apt update
    3. sudo apt install libqtcore4 libqtgui4
    4. sudo apt-get install libqtgui4:amd64




    redis 单线程

    1.1下载: https://redis.io/
                   https://redis.cn/download

    1. $ wget http://download.redis.io/releases/redis-6.0.6.tar.gz
    2. $ tar xzf redis-6.0.6.tar.gz
    3. $ cd redis-6.0.6
    4. $ make
    5. $ make install
    6. $ redis-server
    7. $ redis-cli




    1.2.安装:
       解压: tar zxvf redis5.tar.gz
       构建: make makefile            
       安装: make install 

    GitHub - sewenew/redis-plus-plus: Redis client written in C++
     

    1. git clone https://github.com/sewenew/redis-plus-plus.git
    2. cd redis-plus-plus
    3. mkdir build
    4. cd build
    5. cmake ..
    6. make
    7. make install
    8. cd ..



    1.3.环境测试:
       1.3.1 启动server:redis-server

    1.3.2 启动client: redis-cli


         

    1.4.redis 中所有的数据都是键值对

    1.5


    map 是红黑树结构
    hash O(1)
     

    2.redis常用命令+数据类型

       打开网页查看  redis.cn/commands.html
       

    2.1 字符串操作命令


    2.2list


    2.3set


    2.4sortedset


    2.5 hash


    2.6key

     


    3.redis 配置文件

    可视化工具下载与安装
    1.windows: 
        https://www.cnblogs.com/telwanggs/p/11431501.html
    2.苹果和ubuntu 的下载与安装

    Install - RESP.appicon-default.png?t=N7T8https://docs.redisdesktop.com/en/latest/install/#ubuntu-archlinux-debian-fedora-centos-opensuse-etc

    目录:  安装包   /etc/redis5/redis.conf

    cp redis.conf ~
    cd ~
    vim redis.conf
    1. 绑定ip 
        1.1本机访问: bind 127.0.0.1
        1.2 远程访问:注释掉 :bind
                               去掉保护模式:80行: protected-mode  no 
                               防火墙:           centos 或者redhat 需要关闭

    2.port:                       84行  6379
    3.daemonize yes : 128行  守护进程
                                     如果yes  会在 /var/run/redis.pid
    4.log 日志 类型debug verbose notic
        默认是扔掉的 /dev/null
        可以设置成存到文件中:

    5.默认有16个数据库
      0- -1 : 0 1 2 ..... 15

    1.按照配置文件启动服务
    redis-server ./redis.conf 配置完后 redis.conf、redis.log、 redis.pid 在一个目录下。

    2.客户端访问:
       2.1 本地访问  redis-cli -p 6380 //-p 端口 6380



    2.2 远程访问:
          redis -cli -h 192.168.9.78 -p 6380
          keys *
         select 1   选定数据库
         keys *      查询所有的数值
         set hello world          添加值
       验证: 本机登录  


     

    4.redis 持久化
     

         存在当前目录下\dump.rdb 

    1.存储频率:900秒  最少1个key
                      300秒  最少10个key
                       60秒  最少10000个key

    2.文件名,目录都可设置:

    3.aof 文件的设置,与rdb文件互斥


     

    同步频率 :每秒同步一次


    5.hiredis的使用
     

      redis.cn/clients.html
     

    5.1    下载安装


             make
             make install

     

    一般是在/usr/local/include   /usr/local/lib  /usr/local/lib/pkgconfig
    cd ~/package/redis/hiredis-master
    查看hiredis的库:就这么多文件

    1.查看头文件
    2.查看example
        2.1 连接 redisContext *c;
                       redisReply *reply;
             
      2.2  连接成功
             

    1. //1.ping server
    2. reply=redisCommand(c,"PING");
    3. freeReplayObject(reply);
    4. //2.set a key
    5. reply=redisCommand(c,"SET %S %S","FOO","HELLO");
    6. freeReplayObject(reply);
    7. //3.set a key 二进制
    8. reply=redisCommand(c,"SET %b %b","bar",(size_t)3,"HELLO",(size_t)5);
    9. freeReplayObject(reply);
    10. //4.创建一个list
    11. for(j=0;i<10;j++)
    12. {
    13. char buf[64];
    14. snprintf(buf,64,"%u",j);
    15. reply=redisCommand(c,"push mylist e-%s",buf);
    16. freeReplyObject(reply);
    17. }
    18. //check list
    19. reply=redisCommand(c,"list 0-1");
    20. if(reply->type==REDIS_REPLY_ARRY)
    21. {
    22. for(j=0;jelements;j++)
    23. {
    24. printf("%u %s\n",j,reply->elements[j]->str);
    25. }
    26. }
    27. freeReplyobject(reply);
    28. redisFree(c);

                

    5.2 API 函数的使用

        5.2.1  连接

    tcp连接

    5.2.2请求命令 

    返回值: 



     

  • 相关阅读:
    32.nacos配置文件中心,使用实例(springcloud)
    【Leetcode】1776. Car Fleet II
    蓝桥杯:买不到的数目
    win10利用minikube在自己的电脑上搭建k8s
    项目管理中,项目干系人的角色和责任
    Android 9.0 在init.rc中启动一个服务
    算法自学__树链剖分
    spring boot网上眼镜商场毕业设计-附源码241659
    如何将本地jar包安装到maven仓库
    leetcode:367. 有效的完全平方数
  • 原文地址:https://blog.csdn.net/aggie4628/article/details/132834280