备注:
   因为fabio 依赖consul vault (不是强需),启动之前需要先安装consul,
   本次为了简单consul 使用的是单机,使用的是dev 模式
 
1. conusl 安装&&启动
wget  -O consul_1.0.1_linux_amd64.zip https://releases.hashicorp.com/consul/1.0.1/consul_1.0.1_linux_amd64.zip?_ga=2.266211915.599626352.1512025497-95808125.1504594004
unzip consul_1.0.1_linux_amd64.zip
cp consul /usr/bin nohup consul agent --dev &
 
 
2. fabio 安装&&启动
https://github.com/fabiolb/fabio/releases 地址下载对应的版本
nohup fabio &
 
 
 
3.  配置使用
备注:参考官方的demo (go)

a. get code
go get github.com/fabiolb/fabio cd $GOPATH/src/github.com/fabiolb/fabio/demo b. build
go build
c. run
./server -addr 127.0.0.1:5000 -name svc-a -prefix /foo
 
 
参考运行界面
 
4. 官方demo 的几个问题,以及实际需要注意的
实际系统中我们可能会存在比较多的系统故障,比如consul 集群故障,fabio 故障,服务故障,目前存在以下几个问题
a. 服务宕机
这个比较简单,问题不大,重新起来进行注册就可以了
b. fabio宕机
这个就有问题了,实际上我们应该多个节点,简单故障
c. consul 宕机
fabio 不受较大影响(因为cache),新服务不能注册,以前的可以使用,但是此时consul 起来之后,需要进行服务注册的重试,不然consul旧的服务是没有的
假如此时使用了lb 或者类似工具解决ha 以及负载均衡问题,旧会出现数据一致性的问题,实际上可能需要确保,数据的一致性 备注:上面的分析也是从部分极端情况下设想的,但是实在分布式系统中,一切皆有可能,因为可能会触连锁反应,所以还是最好规划,以及有对应的解决方案
方法
 
5. 参考资料
https://github.com/fabiolb/fabio
 
 
 
 
 

fabio 安装试用&&实际使用的几个问题的更多相关文章

  1. 项目管理工具 Redmine 安装试用手记

    原文:项目管理工具 Redmine 安装试用手记 项目管理工具 Redmine 安装试用手记 分类: Redmine2009-06-01 10:12 996人阅读 评论(1) 收藏 举报 项目管理工具 ...

  2. Tencent Server Web 安装试用

    Tencent Server Web 安装试用 私有环境搭建,使用docker-compose 进行memcache 安装 参考github 代码 https://github.com/rongfen ...

  3. toxiproxy 安装试用

    备注:    实际上是一个代理工具,但是又不是简单的进行代理(tcp,可以配置策略,toxics 实现延迟,模拟故障,    对于这个大家可能了解的就是netflix 公司的chaos monkey, ...

  4. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  5. windows openssh server 安装试用

    使用Windows的可能会知道win10 的已经包好了openssh 服务,但是对于其他机器win 7 windows 2008 ,就需要其他的方法了 还好powershell 团队开发了支持wind ...

  6. pgbench 安装试用

    pgbench 是一个方便的pg 性能测试工具,以下是简单的测试试用 安装 安装pg yum install https://download.postgresql.org/pub/repos/yum ...

  7. flynn 开源paas 平台安装试用

    flynn 是一个不错的开源paas 平台,基于git 以及容器技术,开发模型与 heroku 基本一样,同时构建方式就是基于heroku 的buildpacks 安装 官方文档提示说明是ubuntu ...

  8. nsq 安装试用

    因为是mac 系统安装试用brew install nsq 安装 brew install nsq 组件说明 nsqd 守护进程进行消息的接受,缓存以及传递消息给客户端,需要配置nsqlookupd地 ...

  9. apache phoenix 安装试用

    备注:   本次安装是在hbase docker 镜像的基础上配置的,主要是为了方便学习,而hbase搭建有觉得   有点费事,用镜像简单.   1. hbase 镜像 docker pull har ...

随机推荐

  1. spring mvc:视图解析器

    ModelAndView对象中的view对象,可以使用字符串来让Spring框架进行解析获得适合的视图.而解析View的就是ViewResolver技术. ViewResolver的定义如下: pub ...

  2. 为Pdf批量添加水印

    Itext官网下载jar包 /** * PDF工具类 */ public class PdfUtil { public static void main(String[] args) throws E ...

  3. 5.彻底理解volatile

    1. volatile简介 在上一篇文章中我们深入理解了java关键字synchronized,我们知道在java中还有一大神器就是关键volatile,可以说是和synchronized各领风骚,其 ...

  4. 用Qt写了一个qq客户端,采用webqq协议,发出来和大家分享一下---大神请无视

    首先做以下声明: 本程序基于腾讯公司的webqq协议开发,所有相关版权归腾讯公司所有.此程序只用于技术交流和学习,不得用于其他方面. ---开发者:雨后星辰,转载请注明出处:http://www.cn ...

  5. restframework api(基础1)

    最近项目忙成狗,都没时间好好看看开发的东西了,正好最近开始看rest api的东西,真是个好东西啊.可以前后端分离,但是在学习的过程中,遇到各种问题.还是基础不够扎实.本次rest api的会一边遇坑 ...

  6. How to create Oracle ASM devices using device-mapper multipath devices in Red Hat Enterprise Linux 6

    How to create Oracle ASM devices using device-mapper multipath devices in Red Hat Enterprise Linux 6 ...

  7. 转载:【Oracle 集群】RAC知识图文详细教程(一)--集群概念介绍

    文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...

  8. bzoj3600

    题解: 好像是什么替罪羊树 然后看了几个题解 然后就抄了一边 代码: #include<bits/stdc++.h> using namespace std; ; int n,m,rt,R ...

  9. 生产者与消费者的Java实现

    首先创建maven工程,需要引入的包: <dependencies> <dependency> <groupId>org.apache.kafka</grou ...

  10. node csrf 防御 待续

    csrf 防御 token 与 ajax 主要是在cookie添加随机数, 因为攻击者 无法访问第三方网站的 cookie,  加上httponly, 即使是xss也无法访问了 也可以在页面上嵌入一个 ...