zoukankan      html  css  js  c++  java
  • Redis其他教程

    Redis 管道技术

    Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤:

    • 客户端向服务端发送一个查询请求,并监听Socket返回,通常是以阻塞模式,等待服务端响应。

    • 服务端处理命令,并将结果返回给客户端

    Redis 管道技术可以在服务端未响应时,客户端可以继续向服务端发送请求,并最终一次性读取所有服务端的响应。

    查看 redis 管道,只需要启动 redis 实例并输入以下命令:

    $(echo -en "PING
     SET runoobkey redis
    GET runoobkey
    INCR visitor
    INCR visitor
    INCR visitor
    "; sleep 10) | nc localhost 6379

    +PONG
    +OK
    redis
    :1
    :2
    :3

    以上实例中我们通过使用 PING 命令查看redis服务是否可用, 之后我们设置了 runoobkey 的值为 redis,然后我们获取 runoobkey 的值并使得 visitor 自增 3 次

    Redis 分区

    分区是分割数据到多个Redis实例的处理过程,因此每个实例只保存key的一个子集。

    分区的优势

    • 通过利用多台计算机内存的和值,允许我们构造更大的数据库。

    • 通过多核和多台计算机,允许我们扩展计算能力;通过多台计算机和网络适配器,允许我们扩展网络带宽。

    分区的不足

    redis的一些特性在分区方面表现的不是很好:

    • 涉及多个key的操作通常是不被支持的。举例来说,当两个set映射到不同的redis实例上时,你就不能对这两个set执行交集操作。

    • 涉及多个key的redis事务不能使用。

    • 当使用分区时,数据处理较为复杂,比如你需要处理多个rdb/aof文件,并且从多个实例和主机备份持久化文件。

    • 增加或删除容量也比较复杂。redis集群大多数支持在运行时增加、删除节点的透明数据平衡的能力,但是类似于客户端分区、代理等其他系统则不支持这项特性。然而,一种叫做presharding的技术对此是有帮助的。

    Java 使用 Redis

    下载驱动包 下载 jedis.jar

  • 相关阅读:
    大整数模拟
    MSSQL存储过程中获取记录集并循环操作一例
    about协议的妙用
    C#基础概念二十五问
    很完美的JS判断日期函数
    asp.net C# FileUpload 控件如何判断文件名的后缀
    c++中指针学习的两个绝好例子
    ASP.net性能优化总结
    C++指针
    JS中的undefined,null,"",0和false
  • 原文地址:https://www.cnblogs.com/yjh1995/p/12872817.html
Copyright © 2011-2022 走看看