温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

实属无奈!Redis 作者被迫修改 master-slave 架构的描述

发布时间:2020-08-10 08:41:50 来源:ITPUB博客 阅读:175 作者:humengyi 栏目:关系型数据库

相信在座各位的开发者都不会对 Redis 的主从模式(master-slave)感到陌生。Redis 中的主从模式事实上也是源自 MySQL 中同名的一个概念,是同步数据的一种手段。在这样的场景下,master-slave 本来是一个不带任何感情色彩的词语。然而有很多开发者却不这样认为,他们在阅读 Redis 5.0 RC5 的变更日志后发现,Redis 仍然在使用 “master” 和 “slave” 术语来在 Redis 的复制中区分不同的角色,他们对此感到失望,并希望 Redis 作者能修改 Redis 中 master-slave 架构的描述。

按 Redis 作者 antirez 的说法,这已经不是开发者第一次提这种要求了。但这次呼吁修改的声音异常的大,就连 antirez 在推特发起的匿名投票也显示超过半数的人希望修改 master-slave 这一描述。


实属无奈!Redis 作者被迫修改 master-slave 架构的描述

antirez 表示他很抱歉 master-slave 这个描述让许多人感到失望,但他不认为这个特定于上下文环境的术语具有侵犯性。所以他在数据库中使用 master-slave 当然不是以任何方式暗示“奴隶制度”。

antirez 还表示,这个看似简单的修改实际上要付出昂贵的代价,并产生兼容性问题。例如:

  • 不能在应用现有的 PR

  • 现在有像 INFO 和 ROLE 这样的命令 —— 使用包含 slave 术语的协议进行回复

  • 术语 slave 中的源代码包含 1500 个事件

  • 拥有私人项目并根据需要进行代码合并的人会遇到很多问题

可以看到,冒然进行变动会产生很多问题。而且,现在发布的 Redis 5 候选版本是向后兼容的首个稳定版本。所以这也是需要考虑的一方面。最后 antirez 表达了希望能折中解决问题的建议 ——

短期内的变化

  • 将 master-slave 架构的描述改为 master-replica

  • 为 SLAVEOF 提供别名 REPLICAOF,所以仍然可以使用 SLAVEOF,但多了一个选项

  • 保持继续使用 slave 来对 INFO 和 ROLE 进行回应,现在目前看来,这仍然是一个重大的破坏性变更

长期变化

  • 编写一个 INFO 的替代品

  • 在内部替换很多东西,因为技术原因,如果作了改动,许多 PR 也会无法应用,所以必须在某些地方进行大变动

  • ……

antirez 认为,这些所谓的“政治正确”并没有什么意义,他也在博客中表达了自己的政治倾向,他每天都会在社交网络积极谈论政治,以推动社会的平等。他希望拥有一个公平、机会财富再分配和开放的世界。但他认为获得这个世界的方式不是禁止言论,也不是通过在 Twitter 上讨伐别人 —— 只是为了让他人遵守你的意识形态。antirez 表示他将会继续自己的政治活动,也会继续编写开源软件。

参考链接

  • http://antirez.com/news/122

  • https://github.com/antirez/redis/issues/5335

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI