B/S 架构详解:现代 Web 应用的核心模式
在当今高度互联的数字时代,Web 应用已成为企业运营、公共服务和日常生活的基础设施。无论是电商平台、在线办公系统,还是政府服务平台,其背后都依赖于一种核心的软件架构模式——B/S 架构(Browser/Server Architecture,浏览器/服务器架构)。
作为对传统 C/S 架构的演进与优化,B/S 架构凭借其跨平台性、集中式维护、部署便捷性以及强大的可扩展能力,已成为现代 Web 应用开发的事实标准。
一、什么是 B/S 架构?
B/S 架构是一种基于 Web 的多层客户端 - 服务器软件架构模型。其核心思想是将用户界面、业务逻辑与数据存储进行分层解耦,用户通过标准 Web 浏览器访问系统,所有核心逻辑和数据处理集中在服务器端完成。
与传统的 C/S 架构不同,B/S 架构无需在用户设备上安装专用客户端程序,仅需一个支持 HTML、CSS 和 JavaScript 的现代浏览器即可运行应用。这种'零安装、即开即用'的特性,使其在互联网普及后迅速成为主流。
二、B/S 架构的典型组成结构
一个标准的 B/S 架构通常采用三层逻辑模型(Three-Tier Architecture),整体交互流程如下:
graph LR
subgraph Client
Browser[浏览器]
end
subgraph Server
WebServer[Web 服务器 Nginx]
AppServer[应用服务器]
DB[(数据库)]
end
Browser -->|HTTP/HTTPS| WebServer
WebServer -->|转发请求 | AppServer
AppServer -->|SQL| DB
1. 表示层(Presentation Layer)—— 浏览器
- 角色:用户交互入口,负责展示界面、接收输入、发起请求。
- 技术栈:基础 HTML/CSS/JavaScript,框架如 React、Vue、Angular,工具链包括 Webpack、Vite、TypeScript。
- 关键特性:
- 无状态性:每次 HTTP 请求独立,会话状态由 Cookie/Session 或 Token(如 JWT)管理;
- 跨平台兼容:可在 Windows、macOS、Linux、iOS、Android 等系统上运行;
- 安全沙箱:受限于浏览器同源策略,无法直接访问本地文件系统或硬件资源。
2. 业务逻辑层(Application Layer)—— 应用服务器
- 角色:执行核心业务规则,处理用户请求,协调数据访问。
- 常见技术栈:Java(Spring Boot)、Python(Django/FastAPI)、Node.js(Express/NestJS)、.NET、Go 等。
- 核心职责:路由分发、认证授权、事务控制、调用第三方服务及提供标准化 API(RESTful、GraphQL)。
注:在前后端分离架构中,此层不负责页面渲染,仅返回结构化数据(如 JSON)。
3. 数据访问层(Data Layer)—— 数据库服务器
- 角色:持久化存储结构化或非结构化数据。
- 主流类型:关系型(MySQL、PostgreSQL)适用于强一致性场景;非关系型(MongoDB、Redis)适用于高并发灵活 schema 场景。
- 关键能力:ACID 事务支持、高可用与自动故障转移、分库分表及缓存集成。
补充组件:Web 服务器(反向代理)
在生产环境中,通常在浏览器与应用服务器之间部署 Web 服务器(如 Nginx、Apache)作为反向代理,承担静态资源响应、SSL/TLS 终止、负载均衡及安全优化等职责。

