问题标签 [twemproxy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1774 浏览

redis - 使用 redis-benchmark 在 Twemproxy 下对 Redis 进行基准测试

我正在尝试使用 Redis 和 Twemproxy 测试一个非常简单的设置,但我找不到让它更快的方法。

我有 2 个以最低配置运行的 redis 服务器:

从源代码编译并在具有所有适当内存和 CPU 的 1 台机器下运行。

如果我在其中一个实例中运行 redis-benchmark,我会得到以下信息:

现在我想在两个实例前面使用 Twemproxy 来分发请求并获得更高的吞吐量(至少这是我所期望的!)。

我对 Twemproxy 使用了以下配置:

我运行胡桃夹子为:

结果非常令人失望:

我试图通过获取 Twemproxy 的统计数据来了解发生了什么:

是否有任何其他基准可以正常工作?还是redis-benchmark应该工作?

我忘了提到我正在使用 Redis:3.0.6 和 Twemproxy:0.4.1

0 投票
1 回答
273 浏览

redis - 我可以使用 twemproxy 通过 redis 队列大小进行负载平衡吗?

根据 redis 队列的大小(每个实例的密钥数量),我可以使用twemproxy作为 redis 实例池的负载均衡器吗?如果 twemproxy 达到其数据库中预先配置的最大密钥数量,是否能够从上游的一个 redis 实例关闭?

如果是这样,我该怎么做(我对 redis 和其他东西很陌生,所以我可能不会从文档中得到这个)?

提前致谢。

0 投票
1 回答
407 浏览

redis - Redis 和 twemproxy

我最初在我的本地机器上形成了一个具有 3 个主节点和 3 个从节点的 Redis 集群。

现在我想在 Redis 集群上使用twemproxy,所以我使用了以下几行(见下文)作为我的配置文件,并使用 Redis 集群实现了 twemproxy。

但我面临的问题是,在我发送到的 100 个密钥中,port 22122只有 30-40 个已在 Redis 集群中注册。

请帮忙!

0 投票
1 回答
1230 浏览

c# - 无法使用 Stackexchange Redis 从 .Net 调用具有模式的 HSCAN

我正在尝试在 Redis 中运行 HSCAN 命令以仅匹配通过 C# 所需的哈希字段

这就是代码的样子

但是当我在 twemproxy 服务器上运行 HSCAN 命令时,它似乎按预期工作

HSCAN cache_Key 0 MATCH *模式*

我错过了什么?

谢谢

0 投票
1 回答
280 浏览

redis - twemproxy 可以负载均衡读取请求吗?

我想将 redis 与 master 和 slave 一起使用。即几个碎片。每个分片有一个 master 和几个 slave。

是否可以将 twemproxy 配置为使用 master 写入和 slave 读取?还是所有请求都会交给主人?

0 投票
2 回答
328 浏览

php - Twemproxy Lag 强制重启

我们在我们的应用服务器上运行一个 PHP 堆栈,它在本地(通过套接字)使用 twemproxy,为我们的缓存层连接到多个上游 memcached 服务器(EC2 小实例)。

每隔一段时间,我就会从我们的应用程序监视器中收到一条警报,提示页面加载时间需要 > 5 秒。出现这种情况,立竿见影的解决办法是在每台应用服务器上重启twemproxy服务,比较麻烦。

我现在唯一的解决方法是每分钟运行一次并重新启动服务的 crontab,但正如您可以想象的那样,每分钟几秒钟内什么都没有写入,这不是一个理想的永久解决方案。

有没有人遇到过这个?如果是这样,解决方法是什么?我尝试切换到 AWS Elasticache,但它的性能与我们当前的 twemproxy 解决方案不同。

这是我的 twemproxy 配置。

这是 php 层的连接配置:

我们正在运行 0.4.1 twemproxy 和 1.4.25 memcached。

谢谢。

0 投票
1 回答
301 浏览

redis - redis中原始和旧conf文件之间的区别

redis 中的原始和旧 conf 文件有什么区别,以及保留在 redis 服务器中的旧文件的位置是什么。

我在 redis 文档中的 config rewrite 命令中读到了这一点。

网址:- https://redis.io/commands/config-rewrite

0 投票
1 回答
714 浏览

go - Codis - Redis 集群代理安装

我正在探索一个名为codis的 redis 集群的生产稳定代理。它被认为是 twemproxy 的一个很好的替代品,特别是因为我的需求之一是流水线,而 twemproxy 不提供。

然而,英文文档仍然是 WIP,对 github 问题的回复是普通话。

我正在尝试将其安装在

我已经安装了 go 版本 1.8,我可以看到该文件夹/usr/local/go/bin​​。我也将它添加到 PATH 变量中。

但是,在执行命令时go get -u -d github.com/CodisLabs/codis,我得到以下信息:

0 投票
1 回答
1160 浏览

redis - 如果服务器有足够的可用内存,为什么 redis 实例会出现内存不足的问题?

Redis 设置和 twemproxy:
我们有六个 Redis(32 位)版本 3.2.3 实例与 Twemproxy 一起在同一台服务器(AWS EC2 实例 r3.xlarge)上运行。它运行顺利,直到几天。个别实例已开始出现 OOM 问题。无法确定内存不足的确切问题。

Redis 配置:

  1. BG 保存每半小时通过一个脚本为每个实例按顺序触发一次。它在 conf 文件中被关闭。
  2. 将所有六个 redis 实例的 maxmemory 保持在 3.5 GB。
  3. 易变 TTL 的驱逐策略
  4. 到目前为止,每个 redis 实例的峰值使用量在 2.2GB 左右,因此仍未达到 3.5 maxmemory 的限制。

我搜索并修复的内容:

  1. 最大连接数增加到 65535
  2. vm.overcommit_memory 为 1(这可能是 OOM 的原因吗?)
  3. 禁用 THP
  4. 增加 ulimit

据了解,如果 Redis 需要内存,它应该从缓冲内存中使用它。免费命令的输出:

top 命令的输出: top 命令输出

Redis 的错误日志:

0 投票
0 回答
101 浏览

redis - Twemproxy GEOADD 命令

据我了解,GEOADD命令/数据结构与使用ZADD.

当我GEOADD通过我的twemproxy服务器运行时,我收到一个错误:

如果我直接向 redis 服务器本身发出命令,它就可以正常工作。有没有办法运行GEOADD/GEORADIUS通过twemproxy