一.CS/BS 架构
1.1 什么是C/S架构?
c/s架构是第一种比较早的软件架构,主要用于局域网内,也叫客户机/服务器模式。
它可分为客户机和服务器两层:
第一层:在客户机系统上结合了界面显示与业务逻辑;
第二层:通过网络结合了数据库服务器.
注:客户端不仅仅是一些简单的操作.它也是会处理一些运算,业务逻辑的处理等。也就是说,客户端也做一些本该由服务器来做的一些事情。
c/s架构软件有一个特点,就是如果用户要使用的话,要下载一个客户端,安装后就可以使用,比如QQ,OFFICE等
优点:1.)界面操作丰富,可随意摆放
2.)安全性能可保证
3.)只有一层交互,响应速度较快
缺点:1.)适用面窄,通常用于局域网中
2.)用户群固定。由于程序需安装,不适合面向不可知用户
3.)维护成本高,发生一次升级,则所有客户端的程序都要改变
1.2 什么是B/S架构?
B/S架构的全称是Browser/Server,即浏览器/服务器结构。
Browser指的是web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现。
B/S架构的系统无需特别安装,只要有Web浏览器即可。
B/S架构分层:
第一层表现层:主要完成用户和后台的交互及最终查询结果的输出功能
第二层逻辑层:主要是利用服务器完成客户端的应用逻辑功能
第三层数据层:主要是接收客户端请求后独立进行各种运算
优点:1.)客户端无需安装,有web浏览器即可
2.)BS架构可直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强
3.)无需升级多个客户端,升级服务器即可。可随时更新版本,无需用户重新下载
缺点:1.)表现要达到CS程序的程度需花费不多精力
2.)在速度和安全性上需要花费巨大的设计成本
2.1 OSI七层模型与TCP/IP协议
OSI七层模型(标准)
应用层:各种应用程序,使用网络的第一层环节。
表示层:数据的格式化,加密解密,压缩解压缩。
会话层:建立,管理,终止应用之间的会话连接。
传输层:提供端到端的数据服务,可靠不可靠。
网络层:逻辑寻址,路由选择。
数据链路层:将分组数据封装成帧。
物理层:在介质上传输比特,提供物理规约。
优点:1.)建立统一通信标准
2.)降低开发难度,明确各层分工
TCP/IP模型
七层模型太过复杂,工作应用实践难度大,所以简化成了TCP/IP模型
应用层:HTTP,FTP,SMTP,DNS,等应用协议
传输层:TCP,UDP
网络层:IP,ARP,RARP,ICMP
网络接口层:各种通信网络接口
2.2 通信地址
IP地址
IP地址:一台计算机在网络当中的地址编号标识
IPV4
由四个部分构成,每个部分都是整数,取值范围为0~255
IPV6(了解)
由八个部分构成,每部分为四个十六进制数字
公网IP/内网IP
公网IP:连接到互联网上的公共IP,大家都能访问
内网IP:局域网范围内由网络设备分配的地址,不能被主动访问
Windows 查看IP:ipconfig
Linux 查看IP:ifcofig
查看网络联通命令:ping IP/网址
2.3 端口
·是网络地址的一部分,在一台计算机上,每个网络程序对应一个端口
·端口取值范围:0~65535之间的整数
·一台计算机上的端口号不会重复
·通常0~1023的端口会被系统服务或者使用广泛的程序占据,个人应用的端口应该配置>1024
·客户端端口由操作系统分配,服务器端应用端口由开发人员指定
3.1 Socket 套接字概念
Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。
更多推荐
Python 自学笔记 总结 3.0 CS/BS 架构
发布评论