一.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 架构