【项目简介】
Kingshard 是一个由Go开发高功能MySQL Proxy项目,kingshard在知足根本的读写别离的功用上,努力于简化MySQL分库分表操作;可以让DBA经过kingshard轻松光滑地完成MySQL数据库扩容。
作者陈非近照
【注释】
1.请容易地引见一下你本人(技术布景、进修阅历、任务阅历)。
大师好,我叫陈非(@flikecn )。 2013年硕士结业于电子科技大学,同年参加奇虎360的Web平台部,从事Atlas数据库中间件的设计与研发任务。2015年终参加了珠海金山WPS 云平台团队。新团队首要以Go作为开发言语,恰是因为在新的任务中领会到了Go言语的开发效力很高,才让我萌生了写一个容易好用的Go版本的MySQL Proxy的动机。
2.开发 Kingshard 项目是基于如何的启事?
如今可以找到的开源MySQL Proxy项目应当有5-6个,这些项目大部分都有公司布景,非常多功用的参加都联合了公司的营业场景,所以有时分显得并非那末灵敏好用。如今大部分公司 都会用到MySQL数据库,跟着营业的增加,每一个公司都不能不面临怎么疾速扩容、缩容,毛病切换及负载均衡等诸多问题。开发kingshard的就是为了 让DBA借助于kingshard可以很便利地处理这些困难。
3.请您容易引见下 Kingshard 的开发进程。
因为是kingshard是个人项目,上班不会花工夫写kingshard相干的代码。首要开发集中在周末和下课后的空闲工夫,珠海的炎天太阳比较大,所以 我周末凡是不怎样出门,如许就有时机宅在家里写代码了。周末的工夫比较集中,首要用于kingshard的功用完成。平常下课,假如觉得形态还不错的话, 就会对kingshard实行bug修复。值得欣喜的是,曾经有热情的网友Start参加到kingshard的开发中来了。
4.Kingshard 有哪些优势和特色?
如今来看,我感到kingshard的优势和特色首要由以下几个方面:
(1). 可以轻松地应对mysql扩容和缩容。因为kingshard的采取了两级映照的分表计划(https://github.com/flike /kingshard/blob/master/doc/KingDoc/kingshard_sharding_introduce.md),相对其 他开源Proxy,在扩容和缩容方面有很大的优势。
(2).kingshard的安装和运用不依靠于其他第三方组件,如许使得kingshard更轻易安排和运用。
(3).kingshard还计划在下降管理和运维后端DB方面做出尽力,今朝该功用还在开发中。置信再过几个月,会有更多的新特征,大师可以等待一下。:)
5.Kingshard 合适使用在哪些场景?
Kingshard 比较合适于互联网公司。普通互联网公司的数据量都比较大,而且数据增加也比较快,应用单台mysql基本存储不了一切数据,大大多数公司都会选择将一张大表 拆分红若干张子表,并散布在分歧的数据库上。例如,在某些购物狂欢节来领之际,为了知足拜访量的激增,盼望疾速上线多个slave来知足大量用户的拜访请 求。假如公司是在营业逻辑层写分表相干的代码的话,面临这类需求,营业开发职员可能不能不加班加点地修正营业代码了,并且如许暂时地修正代码也会给营业带 来必定的风险。但经过运用kingshard使营业和数据库别离,让营业逻辑仅面临一个超等数据库(kingshard),后真个数据库晋级对营业完整透 明,如许就可以很好地处理上述问题。
6.Kingshard 将来开展标的目的怎么?
Kingshard努力于成为一个运用容易,运维便利,并能很好地处理mysql扩容缩容的数据库中间件。可以让互联网创业公司经过kingshard并共同其他开源软件(例如:LVS,MHA)疾速搭建出一套波动牢靠的mysql集群。
7.往常你是怎么管理和推行 Kingshard 项目标?
Kingshard 从开源到如今差未几两周了,但在2KB开源和github上的存眷人数超越400人。阐明这个项目仍是有价值的。最Start推行是在开发者头条,厥后经过冤家介 绍看法了@红薯 ,然后在2KB开源上推行了一下。颠末这两次推行,增加了很多存眷度。我还为kingshard树立了一个QQ群,凑集了一批可以说是粉丝 吧,我置信经过他们的传达,也能扩展kingshard的着名度。
8.可否谈一下你对开源的了解,和对国际开源技术和产品的见解?
我感到开源不单单是收费,开源关于一个企业来讲,从某种层面来讲,也是一种企业文明的输出。经过开源,企业可以晋升本人在开发者中的着名度。关于个人来讲,开发并保护一个开源项目,我感到这个进程就像一次创业,在这个过程当中,作者需求饰演各类脚色:
(1).充任产品司理,为项目搜集各类需求,并从中提炼出可以处理用户痛点的需求。
(2).架构师,怎么设计和架构全部项目,把软件的功能、波动性和扩大性都公道统筹。
(3).开发和测试工程师,个人开源项目,大部离开发和测试任务也都需求本人完成。
如今国际的开源项目愈来愈多,开源项目触及到的技术也愈来愈中心。这阐明企业和个人开源喜好者对开源的立场愈来愈开放了。
9.你对2KB开源有何看法和建议?
我感到大部离开发者来2KB开源,更多地是来获得技术常识或许开源项目资讯。首页的转动固然晋升了用户的粘性。但其实不能给开发者带来比较有价值的信息。所以说可以思索将转动放在子版块中。
10.请聊聊任何你想谈的话题。
MySQL 数据库中间件相干的开源项目非常多,这阐明用户在这一范畴的需求非常多。kingshard项目盼望给开发者带来与以往数据库中间件纷歧样的新意,最少只在某 些方面,可以有比较完美的处理计划。后续有企业盼望开发一个知足本人定制化需求的数据库中间件,他们可以从kingshard项目中吸取灵感,我感到这就 是kingshard项目标价值地点。
关于开源交流
开源交流是2KB开源推出的一系列针对国际开源技术开展的访谈,以文字的方法记载并传达。我们盼望开源交流能全面的展示国际开源软件、开源软件作者的近况,实在推进国际开源软件的推行与使用。
2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务