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...-. unzip consul_1.0.1_linux_amd64.zip cp consul /usr/bin nohup consul agent --dev &
https://github.com/fabiolb/fabio/releases 地址下载对应的版本 nohup fabio &
备注:参考官方的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
实际系统中我们可能会存在比较多的系统故障,比如consul 集群故障,fabio 故障,服务故障,目前存在以下几个问题 a. 服务宕机 这个比较简单,问题不大,重新起来进行注册就可以了 b. fabio宕机 这个就有问题了,实际上我们应该多个节点,简单故障 c. consul 宕机 fabio 不受较大影响(因为cache),新服务不能注册,以前的可以使用,但是此时consul 起来之后,需要进行服务注册的重试,不然consul旧的服务是没有的 假如此时使用了lb 或者类似工具解决ha 以及负载均衡问题,旧会出现数据一致性的问题,实际上可能需要确保,数据的一致性 备注:上面的分析也是从部分极端情况下设想的,但是实在分布式系统中,一切皆有可能,因为可能会触连锁反应,所以还是最好规划,以及有对应的解决方案
https://github.com/fabiolb/fabio
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/227928.html原文链接:https://javaforall.net
