B/S架构系统角色与对应协议详解

B/S架构系统角色与对应协议详解

一、核心角色及协议映射

系统角色 主要职责 关键协议 协议作用说明
浏览器 用户交互界面 HTTP/HTTPS 应用层通信基础
(Browser) 发送请求/渲染响应 WebSocket 全双工实时通信
执行前端逻辑 WebRTC 点对点音视频传输
DNS 域名解析
------------------- ----------------------------------- ----------------------------------- --------------------------------
Web服务器 静态资源服务 HTTP/HTTPS 请求响应处理
(Nginx/Apache) 请求转发 FastCGI/WSGI 与应用服务器通信
负载均衡 TCP/UDP 传输层通信
SSL终端 TLS/SSL 加密通信
------------------- ----------------------------------- ----------------------------------- --------------------------------
应用服务器 执行业务逻辑 HTTP API (REST/GraphQL) 业务接口通信
(Tomcat/Node.js) 数据处理 RPC (gRPC/Thrift) 服务间高效通信
会话管理 WebSocket 实时消息推送
JDBC/ODBC 数据库连接
------------------- ----------------------------------- ----------------------------------- --------------------------------
数据库 数据持久化存储 SQL (MySQL/PostgreSQL) 关系型数据操作
(MySQL/Redis) 事务处理 NoSQL (MongoDB协议/Redis协议) 非结构化数据操作
查询优化 TCP/IP 网络通信基础
------------------- ----------------------------------- ----------------------------------- --------------------------------
CDN节点 内容分发加速 HTTP/HTTPS 资源传输
边缘缓存 QUIC (HTTP/3) 快速UDP传输
负载均衡 BGP 路由优化
------------------- ----------------------------------- ----------------------------------- --------------------------------
认证服务器 用户身份验证 OAuth 2.0 / OpenID Connect 第三方授权登录
(OAuth服务) 权限管理 SAML 企业级单点登录
令牌颁发 JWT 安全凭证传输

二、协议分层架构

HTTP/HTTPS/WebSocket FastCGI/WSGI SQL/NoSQL协议 RPC/gRPC DNS TLS/SSL QUIC 用户界面层 Web服务器 应用服务器 数据库 微服务 域名系统 安全层 CDN网络

三、关键协议详解

1. 浏览器核心协议

  • HTTP/HTTPS

    HTTP HTTPS 浏览器请求 WebServer 加密响应

    • 无状态请求-响应模型(通过Cookie/Session保持状态)
    • HTTPS = HTTP + TLS/SSL加密
  • WebSocket

    http 复制代码
    GET /chat HTTP/1.1
    Upgrade: websocket
    Connection: Upgrade
    Sec-WebSocket-Key: x3JJHMbDL1EzLkh9GBhXDw==

2. 服务器间通信协议

协议类型 使用场景 特点
FastCGI Nginx+PHP/Python 持久进程/高并发
WSGI Python Web标准接口 框架与服务器解耦
gRPC 微服务通信 基于HTTP/2+ProtoBuf
JDBC Java应用连接数据库 跨数据库标准接口

3. 安全协议栈

sequenceDiagram 浏览器->>+服务器: ClientHello(加密套件列表) 服务器-->>-浏览器: ServerHello(选定套件+证书) 浏览器->>服务器: 验证证书+生成会话密钥 服务器-->>浏览器: 加密确认 双方->>安全通道: 开始加密通信

四、特殊角色协议

1. CDN网络协议

  • QUIC协议
    • 基于UDP的0-RTT快速连接
    • 解决TCP队头阻塞问题
    • 示例:YouTube视频分发

2. 认证协议对比

协议 流程类型 适用场景
OAuth 2.0 授权委托 第三方应用登录
OpenID Connect 身份认证 联合身份认证
SAML 2.0 XML单点登录 企业级SSO解决方案

五、典型通信场景示例

复制代码
1. 用户访问 https://example.com
   👉 浏览器使用DNS解析域名
   
2. 发送HTTPS请求到Nginx
   👉 TLS握手建立加密通道
   
3. Nginx转发请求到Tomcat
   👉 通过AJP协议传输请求
   
4. Spring应用查询MySQL
   👉 通过JDBC执行SQL查询
   
5. 返回JSON响应到浏览器
   👉 使用HTTP/2多路复用传输
   
6. 浏览器渲染页面
   👉 通过WebSocket接收实时更新

协议选择原则

  • 外部通信:HTTP/HTTPS + RESTful API
  • 内部通信:gRPC/Thrift
  • 实时交互:WebSocket/SSE
  • 安全要求:TLS 1.3 + JWT令牌
相关推荐
九皇叔叔7 小时前
《MySQL 体系架构详解:Server 层、SQL 执行流程与 InnoDB、MyISAM、MEMORY 存储引擎》
sql·mysql·架构
怕浪猫7 小时前
FDE 最大的浪费不是写出有 bug 的代码,而是漂亮地解决了一个错误的问题
面试·架构·github
ZGIAI9 小时前
ZGI 迭代节点:批量资料的逐项处理
人工智能·架构
ZGIAI9 小时前
ZGI 知识检索:让业务回答有据可查
人工智能·架构
天远Date Lab9 小时前
零信任架构实战:基于天远双人婚姻评估查询构建自动化房产按揭联合审查网关
运维·人工智能·架构·自动化
2601_9622190110 小时前
版本平滑升级架构:万象生鲜系统 V4.3.3 迭代无停机更新技术拆解
微服务·云原生·架构
2601_9622184713 小时前
万象生鲜系统冷链物联网接入技术实现生鲜企业温控管理数字化
大数据·运维·微服务·云原生·架构
jianqiang.xue13 小时前
智能体整体架构设计:四大模块与目录组织
单片机·嵌入式硬件·物联网·架构·esp32
这个DBA有点耶13 小时前
数据库容灾进入“秒级时代”:同城双活架构原理、关键技术选型与落地实践
数据库·架构·dba
程序员贺加贝14 小时前
一次 SaaS ERP 主数据生命周期设计:Policy、PreCheck 与结构化阻断原因
java·后端·架构·saas