zoukankan      html  css  js  c++  java
  • 一站式学习Redis 从入门到高可用分布式实践(慕课)第四章 瑞士军刀 Redis

    瑞士军刀 Redis

    • 慢查询  找到系统中瓶颈的命令

              客户端请求的生命周期

    两点说明:

    1.慢查询发生在第三阶段

    2.客户端超时不一定慢查询,但慢查询是客户端超时的一个可能因素

    两个配置默认值

    config get slowlog-max-len=128  一种队列   通常设置1000

    config get slowlog-log-slower-than=10000 微秒  10ms  通常设置1ms

    定期持久化慢查询

    动态配置

    config set slowlog-max-len 1000

    config set slowlog-log-slower-than 1000

    慢查询命令

    slowlog get [n] 获取慢查询队列

    slowlog len   获取慢查询队列长度  队列里面有多少慢查询

    slowlog reset   清空慢查询队列

    • pipeline  提高客户端的效率

         流水线

     

              减少网络时间的消耗

    • 发布订阅   redis的发布订阅功能

     角色:发布者 订阅者 频道  订阅者可以订阅多频道(右图)

     

     

    消息队列 要抢      Redis不仅可作为缓存服务器,还可用作消息队列。它的列表类型天生支持用作消息队列

    发布订阅  都有

    • Bitmap  减少内存的方案

    setbit   getbit  bitcount

    Java连接远程的redis时,连接被拒绝。

    Exception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused: connect
    at redis.clients.jedis.Connection.connect(Connection.java:154)
    at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:83)
    at redis.clients.jedis.Connection.sendCommand(Connection.java:93)
    at redis.clients.jedis.BinaryClient.set(BinaryClient.java:100)
    at redis.clients.jedis.Client.set(Client.java:29)
    at redis.clients.jedis.Jedis.set(Jedis.java:65)
    at redis.Demo1.main(Demo1.java:10)
    Caused by: java.net.ConnectException: Connection refused: connect
    at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at redis.clients.jedis.Connection.connect(Connection.java:148)
    ... 6 more

    可能的原因:

    redis服务器的redis.conf配置中bind 127.0.0.1

    应该改为:bind 0.0.0.0

    • HyperLogLog  极端的减少内存的方案/数据结构(算法)

    本质还是字符串

    • GEO 地理信息

                3.2版本添加的新特性 用来计算地理位置相关  其实zset类型实现

     

  • 相关阅读:
    Vue.js之Vue计算属性、侦听器、样式绑定
    Vue之初识Vue
    JS对象与Dom对象与jQuery对象之间的区别
    JavaScript之JS的数据类型
    JS中toString()、toLocaleString()、valueOf()的区别
    【开源】基于 Flink 1.10.1 的 SQL 提交程序
    Flink 1.10 UDF 的一个小问题
    Flink 1.10 SQL 写 Hbase 数据无法写入hbase问题
    Flink SQL 双流 join demo
    Flink SQL 解析复杂(嵌套)JSON
  • 原文地址:https://www.cnblogs.com/jiang910/p/10025052.html
Copyright © 2011-2022 走看看