当前位置: 首页 > 软件库 > 服务器软件 > 存储系统 >

Pika

类 Redis 存储系统
授权协议 MIT
开发语言 C/C++
所属分类 服务器软件、 存储系统
软件类型 开源软件
地区 国产
投 递 者 汪思博
操作系统 跨平台
开源组织 开放原子开源基金会
适用人群 未知
 软件概览

Pika是360开源的类Redis存储系统。  

Pika 是 360 DBA 和基础架构组联合开发的类 Redis 存储系统,完全支持 Redis 协议,用户不需要修改任何代码,就可以将服务迁移至 Pika。有维护 Redis 经验的 DBA 维护 Pika 不需要学习成本。

Pika 主要解决的是用户使用 Redis 的内存大小超过 50G、80G 等等这样的情况,会遇到启动恢复时间长,一主多从代价大,硬件成本贵,缓冲区容易写满等问题。Pika 就是针对这些场景的一个解决方案。

特点

  • 容量大,支持百G数据量的存储

  • 兼容redis,不用修改代码即可平滑从redis迁移到pika

  • 支持主从(slaveof)

  • 完善的运维命令

  • pika pika处理消息可以简单分为以下几个步骤: 我们首先创建连接对象,然后启动事件循环。 当有连接时,调用on_connected方法。在该方法中创建channel channel创建完成,将调用on_channel_open方法。在该方法中,声明了一个queue。 queue声明成功后,将调用on_queue_declared。在该方法中,调用channel.basic_consume,为

  • 环境准备 依赖 CentOS7.6 安装Docker 参照安装(点击) 安装redis-cli 预先安装redis-cli用于测试pika的连接。 yum install -y redis-cli 基本单例 启动 docker pull pikadb/pika:v3.2.2 docker run -p 6379:9221 --name pika --hostname pika \ -d pika

  • 整篇文章包含三种主从关系不能建立问题的解决方案 1.rename问题引起主从关系不能建立  起因:  db目录挂载到了磁盘上,而dbsync目录挂载到本地,等价于两个目录挂载到两块盘 日志: 查看从节点的PIKA.WARRNING日志如下,可以看到提示rename问题. 解释: 因为slave 接受的master全同步数据 是硬链接到db目录的。需要在同一个文件系统上。 解决方案: 将db与dbs

  • import functools import logging import time import pika LOG_FORMAT = ('%(levelname) -10s %(asctime)s %(name) -30s %(funcName) ' '-35s %(lineno) -5d: %(message)s') LOGGER = logging.getLo

  • 前言 最近Python链接rabbitMq时报错 错误信息如下 Traceback (most recent call last): File "mq-client.py", line 12, in <module> connection = pika.BlockingConnection(pika.ConnectionParameters(ip_addr, port_num

  • 先说结论:Pika is not thread safe. Use a BlockingConnection per-thread。 即 Pika 并不是线程安全的,应该在每个线程里,都使用各种的 BlockingConnection 相关 issue:https://github.com/pika/pika/issues/1237 示例一:线程外创建 connection,线程里创建 chann

  • python的pika 库常用函数及参数说明 1. pika.PlainCredentials(username, password, erase_on_connect) 功能:创建连接时的登录凭证 参数: username: MQ 账号 password: MQ 密码 erase_on_connect: 删除连接上的凭据, 默认为 False credentials = pika.PlainCr

 相关资料
  • 项目名称: pika_port 项目作者: AlexStocks 适用版本: 3.1 和 2.x 项目地址: https://github.com/ipixiu/pika-tools https://github.com/Axlgrep/pika-tools 长期维护地址需自行编译 二进制包: https://github.com/ipixiu/pika-port-bin 功能: 将Pika中的数

  • 名称: aof_to_pika 位置: pika bin目录下 目的: 方便Redis数据到Pika的迁移 背景: Pika兼容Redis协议,所以任何使用于Redis的迁移工具同样也适用于Pika,Redis-cli本身提供了一个pipe参数来完成Redis到Redis的数据迁移。该工具的实现方式为读取待迁移Redis的aof文件并批量发送到目的Redis。Berry借鉴这种方式,并增加了如下改

  • Pika内存占用 rocksdb 内存占用 pika 内存占用(tcmalloc 占用) 1. rocksdb 内存占用 命令行命令 info data used_memory_human = db_memtable_usage + db_tablereader_usage 相应配置及对应影响参数 write-buffer-size => db_memtable_usage max-write-b

  • 我有一个微服务架构中的spring网关。 当请求到达网关时,它必须以下面提到的方式进行操作 创建会话并设置属性 在redis中保存会话 将请求路由到Microservice B Microservice B接收会话ID并从会话获取属性 在尝试实现这一点时,(第2点)保存会话ID的操作发生在调用microservices B并返回其响应(第4点)之后。(即第2点发生在第4点之后)。 但是,在请求被路

  • 存储类用于定义容器集群中的不同存储类型。 存储类用于定义容器集群中的不同存储类型,目前仅支持本地存储和Ceph存储。容器集群默认提供本地存储的存储类。存储类用于配合持久卷(PV)动态的创建需要的存储资源。 存储类的详细介绍内容,请参考kubernets官方文档-存储类。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “容器/集群/存储类” 菜单项,进入存储类页面。 查看存储类 该功

  • 问题内容: 使用&等redis expire 命令时,在某些情况下根本不需要键来保存值,因为 生存时间 就是这样。 __ 但是,redis要求任何键具有值。 如果您不想阅读它,最合理的使用价值是什么? 问题答案: 谁说您实际上应该在Redis密钥中存储任何内容? 空字符串是redis密钥的完美有效值,并且它是最短的一个:

  • 我用雷迪森换雷迪斯。我已经在我的本地系统上安装了Redis。我已经编写了以下代码并运行了它: 但是,当我进入redis-cli并尝试检索该键时,我得到这是为什么?为什么它不把数据推入Redis?

  • 名称: redis-copy 位置: pika bin目录下 说明: 实时将redis上的所有请求同步发送给pika,可以非常方便的检查你当前基于Redis的业务是否能够完美迁移至pika 目的: 方便比较redis及pika 降低pika的试用门槛 特点: 实时转发 二进制安全 不兼容请求输出 实现: 利用redis客户端的“Monitor”命令获得实时执行的命令 解析获得的字符串命令,以二进制