In-depth Understanding of BFE
English | 中文
This book focuses on BFE open source project, introduces the relevant technical principles of network access, explains the design idea of BFE open source software, and how to build a network front-end platform based on BFE open source software. Readers with development capabilities can also develop BFE extension modules according to their own needs or contribute code to BFE open source projects according to the instructions in this book.
BFE Open Source Project
BFE is Baidu's unified layer-7 load balancing platform. The BFE platform has been under construction since 2012. By the end of 2020, the BFE platform has forwarded more than trillions of requests per day, with a daily peak of more than 10 million QPS, which has great influence in the industry. In July 2019, BFE's forwarding engine was open-sourced, and was accepted by CNCF (Cloud Native Computing Foundation) as the "Sandbox Project" in June 2020.
Address of BFE open source project: https://github.com/bfenetworks/bfe
Authors
姓名 | Github ID |
---|---|
Miles Zhang | mileszhang2016 |
Sijie Yang | iyangsj |
Ming Dai | daimg |
Chunhua Tao | ohscartao |
Copyright Statement
This book adopts Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) Permission. The distribution copyright belongs to Publishing House of Electronics Industry. Do not reprint, print and distribute without authorization.
The copyright of this book belongs to the BFE open source community. The author of this book reserves the right of authorship for the content he wrote, and the remuneration will be used for the construction of the BFE open source community.
Table of contents
Background
Principles
- Chap2 Introduction to Network Front End
- Chap3 Trend of Network Front End Technology
- Chap4 Introduction to Network Load Balancing Technology
Designs
- Chap5 Design Considerations of BFE
- Chap6 Comparison to Similar Systems
- Chap7 Forwarding Model of BFE
- Chap8 Traffic Routing
- Chap9 Traffic Scheduling
- Chap10 Plugin Architecture
- Chap11 Health Check
- Chap12 Traffic Limiting
- Chap13 Status Monitoring
- Chap14 Logging Mechanism
- Chap15 Timeout Setting
- Chap16 Configuration Management
- Chap17 HTTPS Optimization
- Chap18 Information Passthrough
Operations
- Chap19 Installation And Deployment of BFE Service
- Chap20 Basic Configuration of BFE Service
- Chap21 Configure Load Balancing Algorithm And Session Stickiness
- Chap22 Configure HTTPS Service
- Chap23 Configure Rewrite
- Chap24 Configure Redirect
- Chap25 Configure Traffic Limiting
- Chap26 Support More Protocols
Implementations
- Chap27 Layout of BFE Code Base
- Chap28 Process Model
- Chap29 Processing of Connections and Requests
- Chap30 Module Framework
- Chap31 Request Routing
- Chap32 Load Balancing
- Chap33 Implementation of Core Protocols