• JavaWeb之互联网通信流程


    涉及技术

    先接触老旧技术掌握流程,后面会被新技术替换。
    1、控制浏览器行为技术: HTML ,CSS ,JavaScript (JQuery)
    2、控制硬盘上数据库行为技术:MySql数据库服务器管理使用(SQL重点),JDBC规范(MyBatis)
    3、控制服务端Java行为技术: Http服务器,Servlet(SpringMVC),JSP(模板化技术)
    4、互联网通信流程开发规则: MVC

    互联网通信概述

    两台计算机通过网络实现文件共享行为,就是互联网通信。
    互联网通信过程角色划分:
    1、客户端计算机:
    用于发送请求,来索要资源文件的计算机。
    2、服务端计算机:
    用于接收请求,并提供对应的资源文件计算机。

    互联网通信模型

    互联网通信模型分为C/S通信模型和B/S通信模型。

    C/S通信模型
    • C:client software 客户端软件
      1、客户端软件专门安装在客户端计算机上。
      2、帮助客户端计算机向指定服务端计算机发送请求,索要资源文件。
      3、帮助客户端计算机将服务端计算机发送回来"二进制数据"解析为“文字,数字,图片,视频,命令"。
    • S:server software 服务器软件
      1、服务器软件专门安装在服务端计算机上。
      2、服务器软件用于接收来自于特定的客户端软件发送请求。
      3、服务器软件在接收到请求之后自动的在服务端计算机上定位被访问的资源文件。
      4、服务器软件自动的将定位的文件内容解析为"二进制数据"通过网络发送回发起请求的客户端软件上。
    • 适用场景:
      C/S通信模型普遍用于个人娱乐市场,比如微信、淘宝、京东、视频软件(优酷/B站)、大型网络游戏(魔兽/英雄联盟)。企业办公领域相对应用较少
    • 优点:
      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、所有的文件内容都可以通过网络传输,所有文件都是共享资源文件。
    3、HTTP服务器下共享资源文件分为:静态资源文件、动态资源文件。

    静态资源文件:

    如果文件内容是固定,这种文件可以被称为静态资源文件(文档、图片、视频)。
    如果文件存放不是内容而是命令,这些命令只能在浏览器编译与执行,这种文件可以被称为静态资源文件(.html、.css、.js)。

    动态资源文件:

    如果文件存放命令,并且命令不能在浏览器编译与执行;只能在服务端计算机编译执行,这样的文件可以被称为动态资源文件(.class)。

    静态资源文件与动态资源文件调用区别

    1、静态文件被索要时,HTTP服务器直接通过输出流将静态文件中内容或则命令以二进制形式推送给发起请求浏览器。
    2、动态文件被索要时,HTTP服务器需要创建当前class文件的实例对象,通过实例对象
    调用对应的方法处理用户请求,通过输出流将运行结果以二进制形式推送给发起请求浏览器

    class Student{
    	public int add(int num1,int num2){
    		int sum = num1 + num2;
    		return sum;
    	}
    }
    HTTP服务器(自动)
    	Student stu = new Student();
    	int result = stu.add(10,20);
    	System.out.println(result);
    

    在这里插入图片描述

    后端开发人员在互联网通信流程担负职责

    1、控制浏览器请求行为。
    2、开发动态资源文件来解决用户请求。
    3、控制浏览器接收结果行为。
    在这里插入图片描述

  • 相关阅读:
    netstat命令
    为什么 netstat 对某些服务只显示了 tcp6 监听端口
    端口状态说明 LISTENING、ESTABLISHED、TIME_WAIT及CLOSE_WAIT
    进程启动时主线程创建过程分析
    [Kali]关机卡死,google拼音无法输入
    [白帽子讲WEB安全]XSS <Cross Site Script>
    [白帽子将WEB安全笔记]浏览器安全
    [白帽子将WEB安全笔记]我的安全世界观
    mongodb高可用集群 3 ---分片与副本集结合
    python计算年龄小程序
  • 原文地址:https://www.cnblogs.com/yu011/p/13667969.html
Copyright © 2020-2023  润新知