互联网通信流程
B站-动力节点课程笔记
角色划分
客户端:用于发送请求,索要资源文件。
服务端:用于接收请求,提供对应的资源文件。
通信方式:
方式1:C/S方式
-
服务器软件:
- 是一个软件。
- 服务器软件在接收到请求之后自动的在服务端计算机上定位被访间的资源文件。
- 服务器软件自动的将定位的文件内容解析为【二进制数据】通过网络发送回发起请求的客户端软件上。
-
优点:
- 有个合法的客户端软件,安全性高。
- 减小服务端的计算压力。
-
缺点:
- 增加客户端获得服务的成本。(客户端可能配置不够)
- 更新麻烦。
方式2:B/S 方式
-
优点:
- 不会增加获得服务成本。
- 几乎不用更新浏览器。
-
缺点:
- 几乎无法保护服务器资源文件。
- 服务端工作压力巨大。(高并发解决方案)
程序员工作职责
- 控制浏览器请求行为。
- 服务端:编写Java动态类处理用户需求。
- 浏览器对收的数据进行处理。
HTTP服务器下共享资源文件分类
静态资源文件
-
文件内容固定的。(文档、图片、视频)
-
存放命令,只能在浏览器编译执行的文件。(.html、.css、.js)
动态资源文件
- 存放命令,只能在服务端编译执行。(.class)
静态/动态文件调用的区别
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UUsJ7O9J-1616162544096)(https://cdn.jsdelivr.net/gh/jun14111/ImageHosting/2021-02/2021-02-22-17:18:29.png)]
浏览器请求
浏览器请求3要素
- 请求地址
- 请求方式
- 参数
发送请求的几种方式
- 表单提交,只有这个提交的数据是动态的。
- 超链接
- location
- window.open(“url”)
互联网通信流程图
第1版通信流程图:
第2版互联网通信流程图(加入JDBC):
-
浏览器请求只能发送给http服务器。
-
http服务器和MySql服务器通过端口号区分。
-
http通过调用动态资源文件(主要是
.class
文件),可以调用JDBC将请求发送给MySql服务器。 -
MySql返回的结果,同样通过http服务器推送回浏览器。
工作职责(对应图中3个框):
- 控制浏览器请求行为。
- 服务端:编写Java动态类处理用户需求。
- 浏览器对收的数据进行处理。