掌握互联网通讯流程
两台计算机通过网络实现文件共享的过程, 就是【互联网通讯】。
c, client software; 客户端软件
1)客户端软件专门安装在客户端计算机上
2)帮助客户端计算机向指定服务器计算机发送请求, 索要资源文件
3)帮助客户端计算机将服务端计算机发送回来【二级制数据】解析, 为【文字、 数字、 图片、 视频、命令】
s、server software; 服务器软件
1)服务器软件专门安装在服务器计算机上
2)服务器软件用于接收来自于特定客户端软件发送的请求
3)服务器软件在接收到请求之后自动在服务器计算机上定位被访问的资源文件
4)服务器软件自动地将找到的文件内容解析为【二进制数据】通过网络发送回发起请求的客户端软件上
适用场景:
优缺点:
1) 安全性较高
2) 有效地降低服务器计算机工作压力【它的绝大部分命令是放在客户端计算机上执行的, 所以降低服务器计算机压力】
1) 增加客户获得服务的成本
2) 更新较为繁琐
B/S通讯模型【以后我们重点学这个】
B:browser, 浏览器
1)浏览器安装在客户端计算机软件
2)可以向任意的服务器发送请求,索要资源文件
3)可以将服务器返回的【二进制数据】解析为【文字、数字、图片、视频、命令】
s、server software; 服务器软件
1)服务器软件专门安装在服务器计算机上
2)可以接收来任意浏览器发送的请求
3)自动在服务端计算机上定位被访问的资源文件
4)自动地将找到的文件内容解析为【二进制数据】通过网络发送回发起请求的浏览器上
适用场景:
优缺点:
1) 不会增加获得服务的成本
2) 几乎不需要更新浏览器
1) 几乎无法有效对服务器计算机资源文件进行保护
2) 服务端计算机工作压力异常巨大----->【B/S通信下高并发解决方案】
可以通过网络进行传输的文件, 都被称为共享资源文件
所有的文件都可以通过网络传输, 所有的文件都是资源文件
1)静态资源文件
2)动态资源文件
1) 如果文件内容是固定, 这种文件被称为【静态资源文件】(文档、 图片, 视频)
2)如果文件存放不是内容而是命令, 这些命令只能在浏览器编译使与执行,这种叫做【静态资源文件】(.html, .css, .js )
如果文件存放命令, 并且命令不能在浏览器编译与执行;只能在服务器
计算机编译执行, 这样的文件叫做【动态资源文件】
(.class)
静态文件索要时, Http服务器直接通过【输出流】将静态文件中的内容或则命令以【二进制形式】推送给发起请求浏览器
动态文件被索要时, Http服务器需要创建当前文件class文件的实例对象, 通过实例对象调用对应的方法叫做处理用户请求。通过【输出流】将运行结果以【二进制形式】推送给发起请求的浏览器。
class Student { public int add(int num1, int num2) { int num = num1 + num2; return num; } }
Http 服务器(自动)
Student stu = new Student(); int res = stu.add(10, 20); out.println(res);
- 控制浏览器发送的请求地址
- 控制浏览器发送请求方式
- 控制浏览器发送请求携带的参数
- 控制浏览器采取对应【编译器】将接收二进制数据解析为【文字, 视频, 图片, 命令】
- 控制浏览器解析内容或命令进行相关执行与展示(全局刷新展示/局部刷新展示)
3.控制住用户与浏览器交流【js —> Jquery】