类似 redis 或者 memcache 使用的时候如果将 key 统一做 md5 处理有什么好处呢,

2019-07-21 13:55:39 +08:00
 Nicolay
14903 次点击
所在节点    Redis
12 条回复
lihongjie0209
2019-07-21 14:04:52 +08:00
如果你想访问 user:* 怎么办
NewDraw
2019-07-21 14:22:16 +08:00
一楼的说法完美的回答了这个问题。
数据混淆,防止泄密。
insert000
2019-07-21 16:29:49 +08:00
如果是高并发访问,md5 计算,cpu 会成为瓶颈
Lax
2019-07-21 19:01:46 +08:00
md5 冲突了怎么办?
base64 长度会增加,而且长度不一致。
MeteorCat
2019-07-21 19:04:49 +08:00
不要总想这种骚操作,你每个请求还得加个 md5 过程
v2nika
2019-07-21 19:10:30 +08:00
感觉没有必要, 用 redis 要有分表的概念, 不同业务放在不同表里面, 这样不会有前缀, 都用 id 当 key 就好了
Hstar
2019-07-21 19:21:32 +08:00
建议看看 redis 的原理,搞懂 redis 是怎么做 hash map 的,就不会问这俩问题了。
yidinghe
2019-07-21 19:33:27 +08:00
有其他的高效哈希算法,比如 murmur2,但哈希毕竟不靠谱,还是不要用。
newghost
2019-07-21 21:40:04 +08:00
做过 redis 的二次开发,redis 就像一个数据结构存储数据库,本身是个大的 hash map 集合。
在设计时为了考虑集群,将 key 都做了 hash 处理,这样 key 的分布就比较均匀,比较容易做负载均衡,
将各个 key 对应到各个实例中。
如果不考虑集群,直接存成一个有序列表就好了,key * 的性能也不会像现在这么差。
dafengchui
2019-07-22 10:22:36 +08:00
@MeteorCat #5 这不是骚操作,这是稍微商用点软件都需要考虑的问题,防止泄密,虽然是防君子不防小人.
ebingtel
2019-07-22 13:51:12 +08:00
说实话,如果明文的 key 长度不太长的话,做 md5 加密,没任何意义……如果 key 长度比较长,可以用 md5 缩短 key 的长度
oldmanong
2020-02-24 23:53:17 +08:00
首先你无法使用 redis desktop manager 了,其次运维要骂娘了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/584839

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX