问题标签 [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.
redis - Twemproxy 只连接一个 redis 实例
我在我的服务器上运行 3 个 redis-server 实例,这些实例具有不同的配置文件和 db 文件。eg:redis1设置db位置为/var/lib/redis_1,redis2设置db位置为/var/lib/redis_2。我有 twemproxy 配置:
我启动了 3 个 redis 实例,并分别使用 redis-cli 将数据“名称”设置为不同的值。例如:我将第一台服务器的名称设置为“6381”,将第二台服务器的名称设置为“6382”。我打开 db 文件 dump.rdb,看到 3 个数据值,然后启动 twemproxy。
当我用 redis-cli 连接 twemproxy 并读取键“name”时,它总是返回“6382”。如果我使用不同的客户端连接到它,值仍然相同。如果我直接在 Redis instabces 中更改值,或对 twemproxy 实例执行任何其他操作,我发现更改仅更新到第二个数据库文件 /var/lib/redis_2/dump.rdb。
为什么 twemproxy 不能与 3 个 redis-server 实例一起使用?我的配置有什么问题吗?
ruby - 将 sidekiq 连接到 twemproxy(胡桃夹子)
我正在尝试将我的 sidekiq 连接到 twemproxy 而不是直接的 Redis 连接,但出现以下错误:
似乎我失去了连接,但我无法确定根本原因是什么。你知道尝试这种连接是否兼容?
.net - .net ServiceStack.Redis 客户端的 twemproxy(胡桃夹子)性能下降
在 CentOS 6.4 上安装 redis 和 nutcracker。并尝试使用 ServiceStack.Redis 客户端进行连接。发现主要的性能问题。
测试只剩下 1 个 redis 实例
在下面的单元测试中,我试图通过 nutcracker 向 redis 发送 100k 字符串。
在胡桃夹子重新启动后的前几次运行中,AddRangeToList 的工作时间为 1-2 秒。但是随着后续运行 AddRangeToList 性能从几分钟甚至超过 20 分钟(如果没有配置超时)显着下降。直接使用redis时无法重现。我还没有尝试任何其他客户端。任何想法为什么?
这是我在单元测试运行后在控制台中看到的:
redis - 在配置文件中进行身份验证?
我正在为 redis 使用 twemproxy,并且已经在 RedisToGo.com 中注册。我的帐户有一个类似的链接:
但是 twemproxy 不支持这种形式。我应该怎么办?
提前致谢
redis - redis 客户端管道在 twemproxy 环境中不起作用
我使用redis-py对redis进行操作,我们的环境使用twemproxy作为redis代理。但是当连接到 twemproxy 时,看起来 clinet 管道不起作用。
执行方法时抛出异常
在 twemproxy 环境中,客户端管道不起作用还是 redis-py 的问题?
redis - 将 ServiceStack Redis 与 Twemproxy 一起使用
我一直在成功使用 ServiceStack PooledRedisClientManager。我现在将 Twemproxy 添加到组合中,并在单个 Ubuntu 服务器上运行 4 个 Redis 实例,前面是 Twemproxy。
这导致通过 ServiceStack 连接到 Redis 的轻负载测试(100 个用户)出现问题。我已经尝试过原始的 PooledRedisClientManager 和 BasicRedisClientManager,两者都给出错误No connection could be made because the target machine主动拒绝它
我需要做些什么才能让这两个一起玩得很好吗?这是 Twemproxy 配置
我可以单独连接到每个 Redis 服务器实例,它只是通过 Twemproxy 失败。
redis - Using twemproxy with redis, 'auto_eject_hosts' not working
I've been using Twemproxy 0.3.0 with redis 2.8 following configurations.
I guess if server01 craches or does not reply over server_failure_limit then twemproxy ejects(removes) the server01 from alpha pool and works with consistent hashing for remained server02 and server03.
As a result, my expectation is broken.
Twemproxy did not auto eject crashed server (server01).
So, my test python client program faced on 'Connection refused' error in a cycle.
Is right my expectation? If not, how could I solve this problem?
node.js - node-redis 无法通过 twemproxy 连接到 redis 实例
问题
通过 redis-cli 直接连接到我的 twemproxy 将正确地将我代理到 redis,而不会出现任何问题/断开连接。但是,当我使用 node-redis 连接到 twemproxy 时,出现以下错误:
跟踪如下:
无论 redis-server 是否正在运行,都会发生此错误,因此我很确定它与 node-redis 和 twemproxy 的交互方式有关。或者不互动,视情况而定。
我的问题
到底发生了什么?
背景资料
我有一个简单的测试设置,如下所示:
- aw 当前是 nodejs 集群在同一主机上
- r1/r2 是节点的实例,同样在同一主机上
- 节点版本 0.10.x
- 所有三台机器都运行非常稀疏的流浪文件。暂时分配给每个人的静态 IP,专用网络。每台机器都可以从指定端口上的所有其他机器访问。
redis - 添加更多 redis 服务器后,Twemproxy 会重新平衡吗?
我们计划将 redis 与 twemproxy 一起使用。最初,我们有两个 redis 服务器,但以后会添加更多的 redis 服务器。我想知道在我们添加了更多的 redis 服务器之后,twemproxy 是否会重新平衡 redis 服务器。或者我们应该从两台 redis 服务器上的预期实例数量开始,然后在添加实例后将它们迁移到新服务器?谢谢。
node.js - 全球 Redis Twemproxy 架构
我正在 Node/Mongo/Redis 堆栈上启动一项全球服务。我有一个关于我的 Redis/Twemproxy 配置的架构问题。这是问题的症结所在:我所有的数据都是“全球性的”——也就是说,来自世界各地的用户需要访问相同的数据。不幸的是,跨越海洋的时间约为 300 毫秒 - 因此,为了避免读取速度缓慢,我需要在用户“本地”的服务器上托管我所有数据的副本。
使用 MongoDB 很容易做到这一点。您只需创建一个具有全球成员的副本集,并将 readPreference 设置为“最近”(最小滞后)。完毕。
然而,使用 Redis/Twemproxy,这并不容易......
我当前的解决方案是通过写入每个全局服务器(在 req/res 周期内)来严重影响写入性能。这确实会带来更快的读取速度,因为我可以让每个用户从本地数据集中读取。如果你反过来做,写“本地”,读“全局”——你节省了一大堆空间(你只有一个数据副本),但读取会对性能造成巨大影响。如果必须选择,我需要更快的阅读速度。
我尝试创建一个“主”集群(AMER),然后将其他“全球”集群(亚洲、欧洲)从属于该集群,但是当我尝试从“全球”集群中读取数据时,它什么也没返回。这适用于单个 Redis 实例,因此,我假设这与添加 Twemproxy 和键映射有关。
有没有人有任何建议或想法?配置全局 Redis/Twemprox 架构的最佳方式是什么?