内容简介:traefik 是一个HTTP层面的反向代理和负载均衡, 用Go编写, 有的功能包括:官网是https://如官网所用示例图:
traefik 是一个HTTP层面的反向代理和负载均衡, 用 Go 编写, 有的功能包括:
- 没有依赖
- 带熔断器
- Let's Encrypt证书支持
- 无缝重启
- 支持多个后端:Docker/Kubernetes等
- 自带一个简单的web ui,用于查看请求响应时间和配置等
官网是https:// traefik.io/ . 下载traefik之后,要使用traefik,我们首先要写一份配置文件:
defaultEntryPoints = ["http"] traefikLogsFile = "traefik.log" logLevel = "INFO" [accessLog] filePath = "access.log" [web] address = ":8088" [entryPoints] [entryPoints.http] address = ":8080" compress = true [file] [backends] [backends.local] [backends.local.servers.all] url = "http://127.0.0.1:80" [frontends] [frontends.local] backend = "local" [frontends.local.routes.all] rule = "Path:/"
如官网所用示例图:
其中有三个概念需要了解:
- entrypoint: 这是流量的入口,即是http还是https
- frontend: 这相当于nginx配置中的location, server_name等,即当流量还在nginx上,没有proxy_pass之前
- backend: 这相当于nginx中,proxy_pass后接的配置
了解了这个概念之后, 我们再来看一下traefik是怎么读取配置文件的. traefik配置文件的读取顺序是:
- 默认配置
- 配置文件
- 命令行参数
- k-v存储
从上往下依次增高. 这也就意味着, traefik可以动态配置. 现在我们来解释一下上面贴出来的配置文件:
- 首先前面六行是配置了traefik自身的配置和日志, 包括日志路径, 入口点, 只支持HTTP因为是在本地使用, 没有配域名和证书
- 然后
[web]
指的是traefik自带的web管理界面 -
entryPoints
里则是对traefik的入口点进行配置, 包括监听地址等 -
file
中则包括上面所说的frontends
和backends
的配置(记得一定要写file...我被官网教程坑了)
用下来的感受如下(主要是和Nginx作对比):
- 缺少静态文件服务的支持
- web ui意义并不大
- 配置文件比Nginx的还复杂一点, 反向代理对HTTP的操作能力却又不如Nginx
- 只支持HTTP(s),不支持TCP层面的反向代理
于是我又换回了Nginx. Nginx大法好!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 立体字母建模教程【C4D教程】
- PS学习教程 PS制作字体发光效果教程
- 【C4D教程】卡通风可爱小乌龟建模教程
- 卡通风仙人掌建模教程【C4D教程】
- 3D立体字体制作教程,C4D建模教程
- 3D小乌龟制作教程,C4D建模教程
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。