×

深圳网站建设—APP开发—网站制作—小程序开发_博纳网络公司

0755 -
82538016
82560826
网站制作资讯

开发APP服务器与Redis 3.0集群解决方案

文章编辑:网站建设 文章来源:APP开发 浏览量:

制作APP关于Redis 3.0集群
  Redis 3.0集群采用了P2P的模式,完全去中心化。Redis把所有的Key分成了16384个slot,每个Redis实例负责其中部分slot。集群中的所有信息(节点、端口、slot等),部通过节点之间定期的数据交换而更新。Redis客户端在任意一个Redis实例发出请求,深圳APP开发公司分享如果所需数据不在该实例中通过重定向命令引导客户端访问所需的实例。
APP开发Redis 3 0集群的工作流程如图7-18所示
            制作APP集群模式示意图7-18Redis 3.0集群的工作流程
如上图所示Redis集群内的机器定期交换数据,工作流程如下。
1.Redis客户端在Redis2实例上访问某个数据。
2.在Redis2内发现这个数据是在Redis3这个实例中,给Redis客户端发送个重定向的命令
3.Redis客户端收到重定向命令后,访问Redis3实例获取所需的数据。
Redis 3.0的集群方案有以下两个问题
·个Redis实例具备了“数据存储”和“路由重定向”,完全去中心化的设计这带来的好处是部署非常简单,直接部署Redis就行,像Codis有那么多的组件和依赖。如果哪天Redis集群出了什么严重的Bug,就只能回滚整个Redis集群。但带来的问题是很难对业务进行无痛的升级。
·对协议进行了较大的修改,对应的Redis客户端也需要升级。升级Redis客户端后谁能确保没有Bug?而且对于线上已经大规模运行的业务,升级代码中的Redis客户端也是个很麻烦的事情。
  综合上面所述的两个问题.Redis 3.0集群在业界并没有被大规模使用。
APP开发之云服务器上的集群服务
  国内的云服务器提供商阿里云、UCloud等均推出了基于Redis的云存储服务。这个服务的特性如下:
1.动态扩容
  用户可以通过控制面板升级所需的Redis存储空间,扩容的过程中服务部不要中断或停止,整个扩容过程对用户透明、无感知,这点是非常实用的,在前面介绍的方案中,解决Redis平滑扩容是个很烦琐的任务,现在按几下鼠标就能搞定,大大减少了运维的负担。
2.数据多备
数据保存在主各两台机器中,其中台机器宕机了,数据还在另外一台机器上有备份
3.自动容灾
主机宕机后系统能自动检测并切换到备机上,实现服务的高可用。
4.实惠
  很多情况下为了使Redis的性能更高,需要购买一台专门的服务器用于Redis的存储服务,但这样子CPU、内存等资源就浪费了,购买Redis云存储服务就很好地解决了这个问题。
  有了Redis云存储服务,能使App后台开发人员从烦琐运维中解放出来的运维成本和精力。如果使用云存储服务,就没必要投入这些成本和精力。App后台要搭建一个高可用、高性能的Redis服务,需要投人相当可以让App后台开发人员更专注于业务。好了,APP开发公司关于服务器与Redis 3.0集群解决方案的经验分享本文就到这里。喜欢本站的朋友请持续关注本站,谢谢。博纳网络编辑整理。

当前文章链接:/construction/appkaifa/1678.html
如果您觉得案例还不错请帮忙分享:

[声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。