计算机b s架构模式图,深入理解B/S架构

最近看招聘信息很多都要求理解B/S架构,自己面试时也被问到过这个问题,查找了一些资料,整理出这篇博客。

一: B/S的概念

B/S(Brower/Server,浏览器/服务器)模式又称B/S结构,是Web兴起后的一种网络结构模式。

浏览器是客户端最主要的应用软件,客户机上只需要安装一个浏览器,浏览器通过Web Server(网站服务器)同数据库进行数据交互,浏览器负责界面显示逻辑和极少数的事务逻辑,主要的事务逻辑在服务器端实现,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用

二:什么是浏览器和服务器:

♦ 浏览器:是阅读和浏览Web的工具,它是通过B/S方式与Web服务器交互信息的。

一般情况下,浏览器就是客户端,它要求服务器把指定信息传送过来,然后通过浏览器把信息显示在屏幕上。浏览器实际上是一种允许用户浏览Web信息的软件,这些信息是由Web服务器发送出来的。

♦ 服务器: 服务器(Server),它既是计算机硬件的称谓,有时又是计算机服务端软件的称谓。

用户应该区分开它们,主要就是从语境上去区分。

(1)服务器是一种计算机硬件:服务器应该算是一种高性能的计算机,它作为网络的节点,存储、处理网络上的数据、信息,因此也被称为网络的灵魂。

(2)服务器是一种计算机软件:一般IIS服务器、Java服务器、.NET服务器等名词,,服务器实际上是一种连接在Internet上的计算机软件。它负责Web浏览器提交的文本请求。当用户使用计算机上网时,其实是访问服务器硬件。但是,这个服务器硬件上安装了服务器软件,例如IIS服务器、Java服务器、.NET服务器,它们负责接收用户的访问请求,并根据请求,经过计算将数据返回给用户的客户端(浏览器)

三:B/S架构的优点:

1、客户端无需安装,有Web浏览器即可。

2、B/S架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。

3、B/S架构客户端维护和升级方式简单,可以随时更新版本,且无需用户重新下载, 系统的扩展非常容易。

4、B/S结构利用了不断成熟的Web浏览器技术:结合浏览器的多种脚本语言,用通用浏览器实现原来需要复杂专用软件才能实现的强大功能,节约了开发成本。

四:B/S架构的缺点:

1、在跨浏览器上,B/S架构不尽如人意。

2、功能弱化,存在无法实现的功能, 性能相对较低;

3、在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题。

五:B/S与C/S的对比

其实B/S架构的缺点都是参照C/S架构来说的,本文不详细介绍C/S架构,简单描述一下

C/S架构是第一种比较早的软件架构,主要用于局域网内。也叫 客户机/服务器模式。

它可以分为客户机和服务器两层:第一层是在客户机系统上结合了界面显示与业务逻辑,第二层是通过网络结合了数据库服务器。简单的说就是第一层是用户表示层,第二层是数据库层。界面表示、事务处理逻辑放在客户端,服务端主要负责数据的存储管理式。

这是一张对比两种架构的图片

d914a130634fe88dcfa61b4ea80a57d9.png

找了很多B/S架构相关的技术知识,梳理了一下学习顺序,整理也是一种再创作,在这个过程中加深了自己对技术的理解。

<think>嗯,用户问的是B/S系统的总体架构示例,需要解。首先,我需要回忆B/S架构的基本组成,也就是浏览器-服务器模式。通常分为表示层、业务逻辑层和数据访问层,再加上数据库。不过根据不同的设计,可能还会有更多层次,比如中间件或者负载均衡之类的。 接下来,我得结合用户提供的引用内容,看看有没有相关的信息可以引用。用户给的引用里有关于文件系统注册、红包系统的SET化设计、微服务拆分,以及嵌入向量的内容。这些可能和架构没有直接关系,但或许在解释架构时可以提到微服务,比如引用[3]提到商城应用拆分成用户、交易、商品服务,这可能作为B/S架构中业务逻辑层的一个例子,说明现代系统可能会采用微服务架构来扩展。 然后,架构部分需要描述各层的组件,比如浏览器作为客户端,Web服务器处理请求,应用服务器执行业务逻辑,数据库存储数据。可能还需要考虑负载均衡、缓存、安全机制等。用户需要的是总体架构,所以应该保持简洁但全面。 考虑到用户可能需要示例解,虽然不能直接画,但可以用文字描述各层之间的关系,比如箭头表示数据流。比如浏览器发送请求到Web服务器,Web服务器转发到应用服务器,应用服务器访问数据库,然后返回响应。同时,可以提到相关的技术,比如Nginx作为Web服务器,Spring Boot作为应用框架,MySQL作为数据库,Redis做缓存,这样让用户更有具体概念。 另外,用户可能对架构中的某些部分感兴趣,比如扩展性或者安全性,所以生成相关问题的时候可以包括这些方面。比如如何保证高并发下的稳定性,可以引用引用[2]中提到的SET化和分段路由设计,虽然那是红包系统的,但原理类似,可以类比说明。 最后,确保回答结构清晰,分层次说明,每个部分的功能和常见技术,然后给出相关问题,引导用户进一步思考。同时注意使用正确的LaTeX格式,比如独立公式用$$,但这里可能用不上太多数学公式,除非涉及到算法部分,不过架构可能不需要,所以主要用文字描述。</think>### B/S系统总体架构及解析 B/S架构(浏览器/服务器模式)通常分为三层结构,以下是典型组件及数据流向: ``` $$浏览器(客户端) \xrightarrow{HTTP/HTTPS请求} Web服务器 \xrightarrow{逻辑处理} 应用服务器 \xrightarrow{数据操作} 数据库$$ ``` 1. **客户端层(Browser)** - 用户交互界面(HTML/CSS/JavaScript) - 常见技术:Vue/React框架 - 通过AJAX与服务器通信[^3] 2. **Web服务器层** - 接收HTTP请求(Nginx/Apache) - 静态资源处理 - 负载均衡配置[^2] 3. **应用服务器层** - 业务逻辑处理(Spring Boot/Django) - 身份验证与授权 - 数据库连接池管理[^1] 4. **数据存储层** - 关系型数据库(MySQL/Oracle) - 缓存中间件(Redis/Memcached) - 文件存储系统(OSS/NFS) ![B/S架构示意] (注:实际表应包含双向箭头,展示请求响应流程、安全网关、分布式缓存等组件) 典型技术栈示例: - 前端:Vue3 + Axios - 网关:Nginx + Spring Cloud Gateway - 微服务:Docker + Kubernetes - 数据库:MySQL集群 + Redis哨兵模式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值