常见软件架构 c-s架构和b-s架构的区别

2025-02-0608:09:27营销方案0

B/S架构概述

B/S架构,全称Browser/Server(浏览器/服务器)架构,是一种网络应用程序架构模式。

Browser(浏览器)作为前端接口,负责与用户进行交互。大部分事务逻辑在Server(服务器)端实现,只有极少部分逻辑在前端的Web浏览器中完成。

该架构的系统无需特别安装客户端软件,仅需通过Web浏览器即可访问。

简单来说,我们前端主要负责数据渲染、请求等基本操作,而复杂的逻辑处理则交给后台服务器来完成。

B/S架构的层次结构

第一层:表现层,主要负责用户与后台的交互及最终查询结果的展示。

第二层:逻辑层,主要利用服务器完成客户端的应用逻辑功能。

第三层:数据层,接受客户端请求后独立进行各种数据处理和运算。

B/S架构的优势

1. 使用便捷:客户端无需安装额外软件,仅需Web浏览器即可访问。

2. 广域网应用:BS架构可直接部署在广域网上,通过权限控制实现多客户访问,交互性较强。

3. 维护便利:BS架构无需升级多个客户端,只需升级服务器端即可。可以随时更新版本,无需用户重新下载。

B/S架构的挑战与不足

1. 跨浏览器兼容性:BS架构在跨不同浏览器时可能会遇到一些问题。

2. 开发成本:要达到CS程序的表现力水平,BS程序需要付出更多的开发精力。

3. 安全与性能:在安全性和性能方面,BS架构可能需要更高的设计成本来优化。

4. 交互模式:客户端与服务器端的交互通常采用请求-响应模式,需要刷新页面。但随着Ajax技术的发展,这一问题已得到一定程度的缓解。

B/S架构的几种形式及其工作原理

第一种:客户端-服务器-数据库模式

此模式为常见应用模式:

  1. 客户端向服务器发起Http请求。
  2. 服务器中的web服务层处理Http请求。
  3. 调用业务逻辑上的方法,如果有必要会与数据库进行数据交换。
  4. 服务器将模版+数据渲染成最终的Html返回给客户端。

第二种:客户端-web服务器-应用服务器-数据库模式

此模式为解耦模式:

  1. 客户端向web服务器发起Http请求。
  2. web服务器处理Http请求并调用应用服务器的RESTFUL接口。
  3. 应用服务器执行对应方法,如有必要与数据库交互后返回json数据给web服务器。

第三种:负载均衡器(Nginx)辅助模式

此模式适用于大量用户、高并发应用场景:

  1. 客户端实际接触的是负载均衡器的地址。
  2. 客户向负载均衡器发起Http请求。
  3. Node服务器接收请求并解析,调用应用服务器的RESTFUL接口。
  4. 应用服务器执行对应方法,如有必要与数据库交互后返回json数据给Node服务器。
  5. Node层将模版+数据组合后通过反向代理服务器返回给客户端。

Nginx的优点详述

Nginx作为反向代理服务器,具有以下优点:

  • 解决跨域问题:由于Nginx、Node、应用服务器、数据库都处于内网段中,反向代理能够避免跨域带来的问题。
  • 版权说明:
  • 本文内容由互联网用户自发贡献,本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 295052769@qq.com 举报,一经查实,本站将立刻删除。