bs&cs
常见的软件架构有bs架构和cs架构。
1、工作原理
C/S结构,即Client/Server(客户机/服务器)结构,客户端负责发送请求和处理一部分业务逻辑,服务器端负责处理主要业务逻辑、数据存储和检索。客户端通常需要安装专用的软件。例如:QQ、Pycharm、网易云音乐(安装在电脑上的软件) 客户端:安装的软件(QQ) 服务端:QQ服务器。
B/S结构,即Browser/Server(浏览器/服务器)结构,用户通过浏览器访问服务器,所有的业务逻辑和数据存储都在服务器端完成,浏览器负责发送请求和显示结果。用户不需要安装任何客户端软件。 客户端:浏览器 服务端:运行网站的服务器。
2、部署和维护:
CS结构: 需要在每个客户端部署应用程序,维护和升级较为复杂,尤其是在客户端数量众多的情况下。
BS结构: 只需在服务器端进行部署和维护,用户通过浏览器访问最新的应用程序,维护和升级相对简单。
3. 性能和稳定性:
CS结构: 可以充分利用客户端的计算能力,减轻服务器压力,因此在处理大量数据或复杂计算时,性能通常优于BS结构。
BS结构: 由于所有的处理都在服务器端进行,服务器可能会成为性能瓶颈。
4. 网络依赖性:
CS结构: 客户端可以在一定程度上离线工作,减少了对网络的依赖。
BS结构: 完全依赖于网络,没有网络则无法使用。
5. 安全性:
CS结构: 数据传输量相对较小,可以采用更为严格的安全措施。
BS结构: 数据通过HTTP传输,安全性相对较低,但可以通过HTTPS等协议增强安全性。
6. 适用场景:
CS结构: 适用于对性能要求高、安全性要求严格、网络环境不稳定的应用场景。
BS结构: 适用于需要广泛访问、易用性要求高、维护升级频繁的应用场景。
web框架
常见的web框架:django、flask、tornado、Pyramid、fastapi...
Web框架的组成
一个典型的Web框架通常包含以下几个核心组件:
-
路由(Routing):
- 路由组件负责将用户的请求(通常是HTTP请求)映射到相应的处理逻辑(通常是一个函数或方法)。
- 底层原理:路由通常是通过一个中心化的路由表来实现的