首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解决单点问题的几种思路

解决单点问题的几种思路

作者头像
awk
修改2019-02-20 15:14:04
1.1K0
修改2019-02-20 15:14:04
举报
文章被收录于专栏:cppcpp

最近在项目中遇到一个需求,要解决一个中心节点(下称DC节点)的单点问题,我思考了下,解决方式有三种:

  1. vip + keepalived 布署两台机器(一主一备),这两台用keepalive检测心跳,对外提供vip。每台机器都设置一个crontab脚本,每5分钟检查一下Dc进程在不在,如果不在,则拉起来。 外部用vip访问这个节点。如果一台机器的Dc进程崩溃了,则crontab脚本会拉起来。如果整台机器都挂了,则vip会切换到另一台机器的ip上。
  2. 用Zookeeper选举一个leader来对外服务,当leader节点挂掉后,再选举另一个节点。外部通过Zookeeper来实时 获取Dc的真实ip。 这种方法有个缺点:要布署一个zookeeper集群、且需要zookeeper先运行、其它节点后运行。
  3. 在Dc节点中内置Basic Paxos协议 来实现选举,对外提供接口获取Dc leader节点的ip

http://baozh.github.io/2016-03/paxos-learning/

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档