小编Ran*_*nch的帖子

如何在Redis中调试错误"当使用内存>'maxmemory'时不允许OOM命令?"

尝试设置密钥时,我收到"OOM命令不被允许", maxmemory使用maxmemory-policy"volatile-lru" 设置为500M ,我为发送到redis的每个密钥设置TTL.

INFO 命令返回: used_memory_human:809.22M

  1. 如果maxmemory设置为500M,我是如何达到809M的?
  2. INFO 命令没有显示任何Keyspaces,怎么可能?
  3. KEYS * 返回"(空列表或设置)",我试图更改数据库编号,仍然没有找到密钥.

这是info命令输出:

redis-cli -p 6380
redis 127.0.0.1:6380> info
# Server
redis_version:2.6.4
redis_git_sha1:00000000
redis_git_dirty:0
redis_mode:standalone
os:Linux 2.6.32-358.14.1.el6.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:4.4.7
process_id:28291
run_id:229a2ee688bdbf677eaed24620102e7060725350
tcp_port:6380
uptime_in_seconds:1492488
uptime_in_days:17
lru_clock:1429357

# Clients
connected_clients:1
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0

# Memory
used_memory:848529904
used_memory_human:809.22M
used_memory_rss:863551488
used_memory_peak:848529192
used_memory_peak_human:809.22M
used_memory_lua:31744
mem_fragmentation_ratio:1.02
mem_allocator:jemalloc-3.0.0

# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1375949883
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:-1
rdb_current_bgsave_time_sec:-1
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok

# Stats
total_connections_received:3
total_commands_processed:8
instantaneous_ops_per_sec:0
rejected_connections:0
expired_keys:0
evicted_keys:0 …
Run Code Online (Sandbox Code Playgroud)

redis

23
推荐指数
2
解决办法
4万
查看次数

网络故障后,RabbitMQ群集未重新连接

我有RabbitMQ集群,生产中有两个节点,集群正在打破这些错误消息:

= ERROR REPORT ==== 23-Dec-2011 ::
04:21:34 ===**节点兔子@ rabbitmq02没有响应**
**删除(超时)连接**

= INFO REPORT ==== 23-Dec-2011 ::
04:21:35 === 节点兔子@ rabbitmq02丢失'兔子'

= ERROR REPORT ==== 2011年12月23日::
04:21:49 === Mnesia(兔子@ rabbitmq01):**错误**mnesia_event得到{inconsistent_database,running_partitioned_network,rabbit @ rabbitmq02}

我试图通过使用"tcpkill"终止两个节点之间的连接来模拟问题,集群已断开连接,并且令人惊讶的是两个节点没有尝试重新连接!

当群集中断时,haproxy负载均衡器仍然将两个节点标记为活动并向两个节点发送请求,尽管它们不在群集中.

我的问题:

  1. 如果节点配置为群集,当我遇到网络故障时,他们为什么不尝试重新连接?

  2. 如何识别损坏的集群并关闭其中一个节点?分别使用两个节点时遇到一致性问题.

cluster-computing rabbitmq

14
推荐指数
3
解决办法
2万
查看次数

RabbitMQ**警告**Mnesia超载

RabbieMQ Cluster不接受新连接!连接的套接字数量很少,Rabbitmq日志中唯一的消息是:

**警告**Mnesia超载

那是什么意思?我该如何解决?

rabbitmq

14
推荐指数
1
解决办法
6117
查看次数

docker-machine连接到现有机器

我在AWS上托管了一个docker swarm,基本上是按照本教程的内容创建的.

要部署我们的代码,我需要能够访问我创建这些实例的计算机中的这个群.我没有在docker-machine amazonec2驱动程序的文档中看到任何可以使用我的AWS凭据连接到这些现有实例的驱动程序.

我遇到的一些教程使用--url参数来指定通过docker-machineurl连接到现有实例,但我在最近的docker-machine版本中没有看到该参数.

其他教程提到TLS配置并将其与docker-machine连接到现有实例结合使用,但是给定了独特/秘密的AWS凭证,这似乎是多余的,并且增加了一层复杂性,我希望我能避免.

建议的方法是什么?

无法连接:

puttygen my-key.pem -L> id_rsa

docker-machine create --driver generic --generic-ip-address = ec2 -.... compute.amazonaws.com --generic-ssh-key id_rsa Swarm-Dev01

运行预创建检查...创建机器...(Swarm-Dev01)导入SSH密钥...等待机器运行,这可能需要几分钟...检测创建实例的操作系统...等待使SSH可用...

amazon-web-services docker docker-machine

14
推荐指数
1
解决办法
2931
查看次数