今天介绍的是基于 ngx_lua 的动态服务路由,是整个容器化过程中的一个组件。容器化在服务路由这一块有很大的挑战,又拍云通过自己的一些方案去解决它,而且这个方案也会开源出来,如果大家以后也碰到这样的问题,可以直接用这个方案。
在更新服务的时候,怎么能做到让自己的服务不断掉,又拍云做更新的时候,不允许有失败,如果说因为我们的失败而导致请求失败,即使你的请求非常少,首先从口碑上就很不好;另外一个原因:如果造成了事故,是要赔钱的。这也是我们做动态服务路由的重要原因。
说到服务路由,大家都会想到三个方面:
服务注册、服务发现、负载均衡,服务注册说的是服务提供者在起来的时候,得去服务发现注册一下,以表明我提供了的服务、端口、 IP 是多少,服务名又是什么。
服务发现就是一个集中管理服务的地方,上面记录了有哪些服务,它们在哪些地方。
负载均衡,因为有很多同样的容器提供了同样的一个服务,怎么在这些容器里做负载均衡,也是要考虑的。
服务发现有很多方案, ETC 跟 Consul 算是后起之秀,比较常见……
1
upygad OP 纯正干货,不是干货你……
|
2
erxuan2016 2017-03-16 15:36:23 +08:00
本来还想打死你,发现内容真不错,改为收藏把
|
3
asuraa 2017-03-16 15:44:40 +08:00
说这么好前几天又拍云还是出了上传故障 当天故障时段内我们小程序的音频全挂了
|
4
walkingQ 2017-03-16 15:53:49 +08:00
不错,收藏了
|
6
yvette233 2017-03-16 17:09:44 +08:00
已收藏
|
7
WTT 2017-03-16 17:46:48 +08:00
我就进来瞅瞅看有没有人要被打死
|
8
cyr1l 2017-03-16 18:00:56 +08:00 via iPhone
来源了?项目地址没放?
|
10
rockyou12 2017-03-16 18:47:13 +08:00 via Android
没看完,但是好像 traefik 基本能满足这样的需求吧...
|
11
isCyan 2017-03-16 19:13:00 +08:00 via Android
啊噗云的这位同学,上传个头像好吗
|
12
happywowwow 2017-03-16 19:20:14 +08:00
code 呢...
|