组件分享之后端组件——基于Golang的数据库集群系统vitess

网友投稿 601 2022-11-16

组件分享之后端组件——基于Golang的数据库集群系统vitess

组件分享之后端组件——基于Golang的数据库集群系统vitess

组件分享之后端组件——基于Golang的数据库集群系统vitess

背景

近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。

组件基本信息

组件:​​vitess​​开源协议:​​Apache-2.0 license​​

内容

本节我们分享一个基于Golang的数据库集群系统​​vitess​​,用于通过通用分片对 MySQL 进行水平扩展。

通过封装分片路由逻辑,Vitess 允许应用程序代码和数据库查询对数据在多个分片上的分布保持不可知性。使用 Vitess,您甚至可以随着需求的增长拆分和合并分片,原子切换步骤仅需几秒钟。自 2011 年以来,Vitess 一直是 YouTube 数据库基础架构的核心组件,并且已经发展到包含数以万计的 MySQL 节点。有关 Vitess 的更多信息,请访问​​vitess.io​​。Vitess 拥有一个不断壮大的社区。您可以在 ​​此处​​查看采用者列表。

特点:

扩展性Vitess集Mysql数据库的很多重要特性和NoSQL数据库的可扩展性于一体。其内建拆分分片功能使您能够对您的MySQL数据库集群无限水平扩展,同时无需为应用添加分片逻辑。性能Vitess自动重写对数据库性能有损害的查询。它还使用缓存机制来调解查询,并防止重复查询同时到达您的数据库。通過每夜的​​基準​​來監控性能表現。管理Vitess可以支持自动处理主故障转移和备份等功能。它使用分布式元数据服务来跟踪和管理服务器,使您的应用程序无需关心数据库拓扑变化。连接池Vitess避免了MySQL连接的高内存开销。 Vitess服务器轻松地一次处理数千个连接。分片管理MySQL本身并不提供拆分分片功能,但是您的业务数据量增大到一定程度是您是需要增加集群的。Vitess提供在线拆分功能,只需要很少的时间就完成新集群的切换,无需您在应用程序中添加任何拆分逻辑。工作流Vitess会跟踪有关集群配置的所有元数据,以便集群拓扑始终是最新的,对不同的客户端保持一致。

Vitess支持MySQL 5.6+和MariaDB 10.0+。我们建议使用MySQL 5.7。

具体安装和使用方式可以持续关注我的文档,更多内容可以参考其​​官方网站文档​​

88x31.png

​​知识共享许可协议​​

本作品由 ​​cn華少​​ 采用 ​​知识共享署名-非商业性使用 4.0 国际许可协议​​ 进行许可。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:小程序开发基础-view视图容器
下一篇:组件分享之后端组件——支持多家云存储驱动的公有云文件系统Cloudreve
相关文章

 发表评论

暂时没有评论,来抢沙发吧~