ocelot的问题
前面我们解决了consul的单节点的集群扩建。这里讨论如果在多客户端访问时,单网关也会有瓶颈。
如果单台挂掉,那么也会麻烦,所以根据项目需要解决问题。
ocelot多节点部署
最简单的粗暴解决,多部署几台网关。但是我们需要为客户端提供一个统一的入口,不能写几个路径,这里就要再次借助Nginx,再次用Nginx访问ocelot,统一接口。
这里我们回到ocelot官网文档看看。
大图 — Ocelot 1.0.0 文档
其实这就是多实例的实现。
对于consul集群,我理解文档中使用的方式是每个ocelot对应一个consul注册,没有使用Nginx代理consul。
继续解决问题
Nginx使用,会多转发一层,那么速度会慢?
Nginx要不要考虑单节点挂了?
对于第一个问题是肯定的,应该会慢,就看大家接受否。
第二个问题,如果一直考虑下去,那就基本无解了,软件不是万能的。其实也就到此聊。
如果非得继续下去,那么就是Nginx的集群高可用了。
Nginx集群高可用
这里我就不想再继续了,大家自行查看。
通常就是Nginx+LVS.
nginx主要结合虚拟IP的方式运行。也可以使用keepalived软件。
以上主要是Linux服务器上的配置部署。那么Windows呢?当然是大名鼎鼎dns了。
总结一下
其实以上使用的都可以根据项目需要变通处理。
目前官方文档的集中关键形式都讲完了。要详细了解还得看官网文档。