The latest code of BFE can be downloaded from the BFE open source project release page https://github.com/bfenetworks/bfe/releases. This chapter will introduce BFE v1.8.5 as an example.
At the top level of the code directory, you can see that BFE contains the following directories or files:
$ ls bfe/
ADOPTERS.md CHANGELOG.md CODE_OF_CONDUCT.md CONTRIBUTING.md CONTRIBUTORS.md
AGENTS.md Dockerfile GOVERNANCE.md LICENSE MAINTAINERS.md
Makefile NOTICE README-CN.md README.md SECURITY.md
VERSION bfe.go go.mod go.sum revive.toml release_local.sh
bfe_balance bfe_basic bfe_bufio bfe_config bfe_debug
bfe_fcgi bfe_http bfe_http2 bfe_module bfe_modules
bfe_net bfe_proxy bfe_route bfe_server bfe_spdy
bfe_stream bfe_tls bfe_util bfe_wasmplugin bfe_websocket
conf docs examples snap testsThe hierarchical structure of each directory is as follows:
The functional modules corresponding to each directory in top-down order are described below.
bfe_net: network-related basic librarybfe_http: code for HTTP protocolbfe_tls: code for TLS protocolbfe_http2: code for HTTP2 protocolbfe_spdy: code for SPDY protocolbfe_stream: code for TLS proxybfe_websocket: code for WebSocket proxybfe_proxy: proxy related basic code
bfe_route: code for traffic routingbfe_balance: code for traffic balancing
bfe_module: code for BFE plugin frameworkbfe_modules: code for BFE extension modules, including access control, redirect, rewrite, WAF, rate limiting, AI gateway and WASM plugin modulesbfe_wasmplugin: code for BFE WASM plugin runtime and ABI adaptation
bfe_server: main parts of BFE server
bfe_basic: BFE basic librarybfe_config: configuration loading related codebfe_debug: debug related codebfe_util: BFE basic library related code
Previous: Chap26 Support More Protocols
Next: Chap28 Process Model
