基础:BS(Browser/Server)、CS(Client/Server)架构

简介: 基础:BS(Browser/Server)、CS(Client/Server)架构

一、BS(Browser/Server)

所有浏览器应用都是BS架构。

BS(Browser/Server):浏览器 / 服务器结构。BS是伴随着Internet技术的兴起,对C/S架构的改进,为了区别于传统的C/S 模式,特意称为B/S模式。在这种结构下,通过浏览器来进入工作界面,页面交互部分事务逻辑在前端(Browser)实现,数据逻辑在服务器端(Server)实现。

BS的主要特点是分布性强、维护方便、开发较简单且共享性强、总体拥有成本较低。它是瘦客户端,对大量的数据输入以及报表的应答等都需要通过浏览器与服务器进行交互,通信开销大,而且对于实现复杂的应用构造有较大的困难。

BS架构三层框架:将整个业务应用划分为“表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)”。

常见浏览器:chrome、Firefox、operate、safari、360、腾讯等

二、CS(Client/Server)

CS(Client/Server):客户端 / 服务器结构。C/S结构在技术上很成熟,它的主要特点是交互性强、具有安全的存取模式、网络通信量低、响应速度快、利于处理大量数据。它充分利用两端硬件,将任务分配到Client 和Server两端,降低了系统的通讯开销。C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件。

C/S 架构是一种典型的两层架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。

开发技术:C、C++、Electron

CS架构平台:windows、Android、iOS、Harmony

BS、CS对比:

BS CS
程序架构不同 BS对安全以及访问速度的多重考虑建立在需要更加优化的基础之上,比CS有更高的要求。 CS程序可以更加注重流程可以对权限多层次校验,对系统运行速度可以较少考虑。
处理问题不同 BS建立在广域网上,面向不同的用户群,分散地域,与操作系统关系小,可实现跨平台。 CS安全性较高,与操作系统关系大,不能跨平台。
用户接口不同 BS建立在浏览器上,不管是电脑浏览器,还是手机浏览器,不管是什么系统 Windows、Mac、Linux、Android、iOS、Harmony
获取方式不同 打开浏览器,直接访问。 在应用商店下载应用,或通过U盘安装程序等。
电脑配置 对电脑配置要求较低 对电脑配置要求较高
共享性 用户传播方便,共享性好 应用商店下载也很方便
开发维护 开发维护较易 开发维护较BS要求高
开发成本 较低 较高
开发技术

HTML、CSS、JS

C、C++、Rust、Electron、java、swift、objective-c、dart
发版方式 服务器部署,直接访问 提交应用平台审核,审核通过后发布
开发兼容性 兼容不同内核浏览器 不同操作系统、同操作系统不同版本可能需要从头开发,同操作系统不同设备可能需要兼容差别
对硬件的调用 不便 方便
获取用户设备信息 不便 方便
程序员数量 多 也很多
用户体验 优秀,随着ajax技术的使用,用户体验越来越好 优秀
不适用 类型大型网络游戏,如,王者荣耀,反正我看见过网页版,我不玩游戏 适用重型项目
市场占有率 繁荣 繁荣
应用迁移 方便 不便,需要重新安装
易维护性 较易 相对较高

BS与CS的联系

现在可以使用electron开发客户端,Electron的语法与vue相似度较高,

移动端现在flutter也是一个趋势,市场上使用的公司已经较多,

React Native使用也很多,

还有微信生态,

不管是BS还是CS逐渐都是大前端开发了。

相关文章
|
SQL NoSQL 前端开发
基于BS架构的饰品购物平台设计与实现(程序+文档+数据库)
基于BS架构的饰品购物平台设计与实现(程序+文档+数据库)
|
设计模式 安全 Java
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
496 0
|
JavaScript 前端开发 Go
Wasm Client SDK 架构介绍
Wasm Client SDK 架构介绍
731 13
|
存储 前端开发 安全
【面试题】: bs架构与cs架构的区别以及各自优缺点
bs架构与cs架构的区别以及各自优缺点
9776 0
|
Kubernetes Serverless API
Kubernetes 的架构问题之利用不可变性来最小化对API Server的访问如何解决
Kubernetes 的架构问题之利用不可变性来最小化对API Server的访问如何解决
305 8
|
存储 前端开发 JavaScript
Java电子病历编辑器项目源码 采用B/S(Browser/Server)架构
Java电子病历编辑器项目源码 采用B/S(Browser/Server)架构
462 0
|
运维 Oracle 关系型数据库
LIS实验室信息管理系统功能模块(Oracle数据库、Client/Server架构)
LIS实验室信息管理系统功能模块(Oracle数据库、Client/Server架构)
500 0
|
数据采集 数据库
医院LIS系统源码,SaaS架构的Client/Server应用
LIS系统集申请、采样、核收、计费、检验、审核、发布、质控、查询、耗材控制等检验科工作为一体的网络管理系统。它的开发和应用将加快检验科管理的统一化、网络化、标准化的进程。
435 0
|
SQL 存储 数据库
【SQL server 2008】视图、索引、架构
【SQL server 2008】视图、索引、架构
393 0