2

分散型クローラーの一部として、すべての URL をRedis ソート セットに保存します。これは、クロール キューとRedis ハッシュ(重複を排除し、訪問した URL をマークするため) です。

アクセスしたいさまざまなドメインの URL が 1 ファイルに約 1,100 万個あり、ディスク上の 506 MB のスペースを占有します。

ただし、同じ URL のセットをRedis sorted setに入れると、優先順位が整数 11M から 0 まで減少し、1.759 GB の RAM とRedis ハッシュfrom key: URL-> value: same URL が必要になり、2.048 GB が必要になります。 RAM スペース

Redis サーバーは、AWS のハイメモリ (17GB) 特大 EC2 インスタンスでホストされています。

Redis でスペースが膨張している原因を突き止めたいのですが、それらを格納する方法が非効率的である可能性がありますか、それともスペースの膨張を避けるために特定の方法でメモリを最適化する必要がありますか? メモリのパフォーマンスを改善するための提案は、gr8 になります。助けてくれてありがとう!

これは redis 情報のダンプです:

redis_version:2.4.14
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:64
multiplexing_api:epoll
gcc_version:4.6.3
process_id:739
uptime_in_seconds:329647
uptime_in_days:3
lru_clock:1603627
used_cpu_sys:9521.58
used_cpu_user:3165.06
used_cpu_sys_children:19535.11
used_cpu_user_children:126500.32
connected_clients:76
connected_slaves:0
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
used_memory:12794713864
used_memory_human:11.92G
used_memory_rss:13586632704
used_memory_peak:16575849280
used_memory_peak_human:15.44G
mem_fragmentation_ratio:1.06
mem_allocator:jemalloc-2.2.5
loading:0
aof_enabled:0
changes_since_last_save:46321
bgsave_in_progress:1
last_save_time:1358213403
bgrewriteaof_in_progress:0
total_connections_received:1702
total_commands_processed:95112145
expired_keys:3488037
evicted_keys:0
keyspace_hits:43443780
keyspace_misses:38945
pubsub_channels:2
pubsub_patterns:0
latest_fork_usec:3820832
vm_enabled:0
role:master
db0:keys=116,expires=25
4

0 に答える 0