Categories: DevOps工具

haproxy的frontend/backend和listen区别

listen是frontend和backend相结合的。一个listen本身有一个隐式的backend,但是frontend的前端逻辑可以使用其他后端,它的backend可以被其他frontend使用。从根本上说,它只是让配置对于简单的规则来说更加紧凑,但在其他方面,它几乎等同于在保持配置在一起的同时,声明一个单独的同名frontend和backend。

frontend/backend配置

global
daemon
maxconn 256
defaults
mode http
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
frontend http-in
bind *:80
default_backend servers
backend servers
server server1 127.0.0.1:8000 maxconn 32

listen配置

# The same configuration defined with a single listen block. Shorter but
# less expressive, especially in HTTP mode.
global
daemon
maxconn 256
defaults
mode http
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
listen http-in
bind *:80
server server1 127.0.0.1:8000 maxconn 32

listen对TCP特别有用,因为这样的配置通常比HTTP简单。但是frontend/backend可以用于任何应用程序。

5.0
03
开源优秀项目推荐202003期
MySQL - CHAR vs VARCHAR区别
嘻嘻

嘻嘻IT: 笔者是一个工作七八年的程序猿老鸟,从事涉及的技术栈主要包括PHP、Linux、Devops等,喜欢研究新技术,尝试新技术,提升技术自动化和开发效率,致力于write less,do more! 技术每年都会层出不穷,领域划分的越来越细,不可能学习所有的东西,保持对技术的好奇心,理解技术中核心思想,做一个有深度,有思想的开发!

Recent Posts

Linux中你必须知道的5个压缩命令

Linux系统具有丰富的包和解…

1小时 ago

Shell脚本定时执行的三种方法

Shell脚本是Unix和Li…

2小时 ago

Linux中你必须知道的5个解压缩命令

Linux操作系统中有许多强大…

2小时 ago

Golang如何实现三元表达式?

三元表达式又被称为条件表达式,…

2小时 ago

还不知道Unix和Linux有哪些不同?

随着技术的进步和全球范围内的数…

7小时 ago

Reality Defender一款抵御深度伪造威胁的工具

在数字欺诈猖獗的时代,Real…

8小时 ago