一、互联网通信
1、什么是互联网通信
- 两台计算机通过网络实现文件共享的行为
2、互联网通信过程中的角色划分
- 客户端:用于发送请求,索要资源
- 服务端:用于响应请求,派发资源
3、互联网通信模型
1、c/s通信模型
- c(client software):客户端软件
- 安装在客户端的操作系统上
- 帮助客户端向指定服务端发送请求
- 帮助客户端解析服务端响应回来的二进制数据,解析为可视的文字、图片、视频…
- s(server software):服务器软件
- 安装在服务端的操作系统上
- 接收来自于特定客户端发送的请求
- 根据请求在服务端计算机上定位请求的资源文件
- 将定位的资源文件解析为二进制数据通过网络响应给客户端
- 适用场景
- 普遍用于个人娱乐市场(例:游戏、看片神器…)
- 优缺点
- 优点
- 安全性较高
- 有效降低服务端服务器鸭力
- 缺点
- 增加客户获取服务的成本
- 更新较为繁琐
- 优点
2、b/s通信模型
- b(browser):浏览器
- 安装在客户端计算机上的软件
- 可以向任意服务端的服务器发送请求,索要资源
- 可以解析服务端响应回来的二进制数据,解析为可视的文字、图片、视频…
- s(server software):服务器软件
- 安装在服务端的操作系统上
- 接收来自于任意浏览器发送的请求
- 根据请求在服务端计算机上定位请求的资源文件
- 将定位的资源文件解析为二进制数据通过网络响应给客户端
- 适用场景
- 既适用于个人娱乐市场,又广泛适用于企业日常办公
- 优缺点
- 优点
- 不会增加客户获取服务的成本
- 几乎不需要更新(除非你忍不住)
- 缺点
- 几乎无法对服务端的资源文件进行有效的保护
- 服务端服务器鸭力山大*(用B/S通信下高并发的解决方案处理)*
- 优点
4、资源文件
- 什么是共享资源文件
- 可以通过网络进行传输的文件,都被称为共享资源文件
- 所有的文件内容都可以通过网络传输,所有文件都是共享资源文件
- Http服务器下对于共享资源文件分类
- 静态资源文件
- 文档、图片、视频等文件内容固定的资源
- html、css、js等只能在浏览器编译执行的命令文件
- 动态资源文件
- 不能在浏览器编译运行,只能在服务器上运行的命令文件(.class文件)
- 静态资源文件
- 静态资源和动态资源调用区别
- 响应静态资源时,Http服务器直接通过输出流将静态资源以二进制形式响应给发起请求的浏览器
- 响应动态资源时,Http服务器调用对应的方法处理用户请求,通过输出流将处理结果以二进制形式响应给发起请求的浏览器
5、开发人员的责任
- 控制浏览器的行为
- 控制浏览器的请求行为(三要素)
- 控制浏览器发送的请求地址
- 控制浏览器发送请求的方式
- 控制浏览器发送请求所携带的参数
- 控制浏览器的接收响应行为
- 控制浏览器采用对应的编译器将接收到得二进制数据解析为可处理的数据
- 控制浏览器将解析的响应数据进行处理和展示
- 控制用户与浏览器之间的互动
- 控制浏览器的请求行为(三要素)
- 开发动态资源文件来解决用户的请求