本文介绍JavaWeb的B/S结构通信原理

概念:
       Javaweb中B/S架构是一种系统架构形式,这里的B是Browser(浏览器),S是Server(服务器),是一种系统的架构形式,有以下特点:
       优点:
              1、升级维护方便,成本较低。
              2、不需要安装客户端软件,操作方便。
       缺点:
              1、速度慢(因为所有数据都在服务器端)。
              2、不安全(因为所有数据都在服务器端)。
       实际上,开发B/S结构的系统就是开发一个网站,也就是web系统。一般会在公司内部进行使用,维护成本低,扩展功能方便,易于修改 ,也可以到达公司使用企业级系统进行对数据库的维护目的。

一、WEB系统的访问过程

操作步骤:

第一步:打开浏览器
       第二步:在浏览器地址栏上输入网址:www.baidu.com
       第三步:点击搜索
       第四步:浏览器上会显示访问后响应的结果

这个就是响应结果:

解释:

  • 网址:https://www.baidu.com

  • 域名:www.baidu.com

           在浏览器地址栏上输入域名,域名解析器会将域名解析为一个具体的ip地址。端口号默认是80。
           可以使用命令行来ping一个网址,如果解析出来的是ipv4,就可以将ipv4地址和端口号输入到浏览器进行访问。ipv6无法使用此方式访问。
           也就是39.156.66.14:80,

  • ip地址:相当于计算机在在互联网的地址,具有唯一性。

  • 端口号:找到ip地址,但是一台计算机当中有许多软件,在每一台计算机,端口号是唯一的,一个启动软件具有一个唯一的端口号。
            这样就可以根据ip地址信息发送给某台计算机,计算机通过端口号将信息分配给相应的软件
            网址被域名解析器解析出ip地址,ip地址就是你访问的服务器,也就是计算机。可以说,你访问一个网址,如CSDN网站,你就是在访问一台服务器(计算机)上面的资源,文件。端口号默认是80,所以,网址实际上是映射的ip地址。

二、底层原理

URI:统一资源标识符,代表网络中某个资源的名字,但是仅凭URI无法获取资源。
URL:统一资源定位符,代表网络中某个资源,可以通过URL定位到资源。
URL包括URI。

  • 第一步:用户输入网址

  • 第二步:域名解析器对域名进行解析获取ip。

  • 第三步:浏览器在网络中找到ip对应的服务器。

  • 第四步:服务器会解析到80端口,访问服务器软件。

  • 第五步:服务器软件通过URI找到资源,如果网址后面没有具体的URI,会默认访问网址的欢迎页面文件。

  • 第六步:服务器返回欢迎页面文件到浏览器上。

  • 第七步:浏览器收到服务器的返回进行解析显示。

步骤图:

B/S结构通信系统原理的更多相关文章

  1. 【翻译】CEDEC2013 BANDAI NAMCO 了解游戏格斗动画中的身体运动结构和原理

    CEDEC搬运工程开始~   这篇会议PPT的作者 元梅幸司曾经就职在TECMO参与开发了死或生2,3[ DEAD OR ALIVE],忍龙「NINJA GAIDEN」后来加入NAMCO(现在是BAN ...

  2. Jmeter 结构、原理介绍

    Jmeter结构.原理介绍 一.Jmeter 简介 1.是基于java语言的开源的应用软件. 2.可以进行接口测试.性能测试.接口及性能的自动化测试. 二.Jmeter体系结构 元件:可以理解为每一个 ...

  3. 3D-camera结构光原理

    3D-camera结构光原理 目前主流的深度探测技术是结构光,TOF,和双目.具体的百度就有很详细的信息. 而结构光也有双目结构光和散斑结构光等,没错,Iphone X 的3D深度相机就用 散斑结构光 ...

  4. Map实现之HashMap(结构及原理)(转)

    java.util包中的集合类包含 Java 中某些最常用的类.最常用的集合类是 List 和 Map.List 的具体实现包括 ArrayList 和 Vector,它们是可变大小的列表,比较适合构 ...

  5. hbase操作(shell 命令,如建表,清空表,增删改查)以及 hbase表存储结构和原理

    两篇讲的不错文章 http://www.cnblogs.com/nexiyi/p/hbase_shell.html http://blog.csdn.net/u010967382/article/de ...

  6. HashMap底层结构、原理、扩容机制

    https://www.jianshu.com/p/c1b616ff1130 http://youzhixueyuan.com/the-underlying-structure-and-princip ...

  7. [No0000166]CPU的组成结构及其原理

    中央处理器(Central Processing Unit, CPU) CPU的基本架构和工作原理其实百科上讲得已经相当清楚了,不过我觉得有些事情呢还是给个例子出来比较方便学习.本文会先从内存地址,计 ...

  8. 详细了解 InnoDB 内存结构及其原理

    最近发现,文章太长的话,包含的信息量较大, 并且需要更多的时间去阅读.而大家看文章,应该都是利用的一些碎片时间.所以我得出一个结论,文章太长不太利于大家的吸收和消化.所以我之后会减少文章的长度,2-3 ...

  9. Redis核心原理与实践--散列类型与字典结构实现原理

    Redis散列类型可以存储一组无序的键值对,它特别适用于存储一个对象数据. > HSET fruit name apple price 7.6 origin china 3 > HGET ...

随机推荐

  1. bintree

    Python实现二叉树的建立与遍历 创建(二叉)树节点类 class Node: def __init__(self,data,l=None,r=None): self.val = data self ...

  2. String、StringBuilder、StringBuffer——JavaSE基础

    String.StringBuilder.StringBuffer String不可变 StringBuilder与StringBuffer均可变 StringBuilder线程不安全,效率高,常用 ...

  3. Python调用腾讯云API,实现人脸年龄变化

    网上看到了一个教程,调用腾讯云的人脸识别api和修改年龄api来实现模拟人物不同年龄的面貌 但是大多数教程的代码都是想同的,估计是抄袭哪个人的关键是执行不了 刚好周杰伦马上要发新专辑了,小改一下,拿杰 ...

  4. 经典漏洞-后台备份数据库getshell

    由于接触安全时间不多,一些老的getshell方法不是很清楚.这次碰到了个老站,正好学习了一下. 首先这边是用户名可以猜测出来的,因为输入错误的用户名显示用户名不存在,如果存在的话会显示密码错误. 爆 ...

  5. CSS基本知识点——带你走进CSS的新世界

    CSS基本知识点 我们在学习HTML之后,前端三件套第二件便是CSS,但CSS内容较多,我们分几部分讲解: (如果没有学习HTML,请参考之前文章:HTML知识点概括--一篇文章带你完全掌握HTML& ...

  6. 『现学现忘』Git后悔药 — 30、版本回退git reset --hard命令说明

    git reset --hardcommit-id命令:回退到指定版本.(hard:强硬,严格的回退) 该命令不仅移动了分支中HEAD指针的位置,还将工作区和暂存区中数据也回退到了指定的版本. (提示 ...

  7. Tapdata Cloud 2.1.4 来啦:数据连接又上新,PolarDB MySQL、轻流开始接入,可自动标记不支持的字段类型

      需求持续更新,优化一刻不停--Tapdata Cloud 2.1.4 来啦!   最新发布的版本中,在新增数据连接之余,默认标记不支持同步的字段类型,避免因此影响任务的正常运行. 更新速览 ① 数 ...

  8. 基于YCbCr色彩模型的简易肤色识别器

    一.实验方法 实验共选取了12张图像,利用画笔工具在每幅图像上选取5个点,并分别记录RGB值.取点方式如下图所示:        总共70个点,R,G,B的值分别如下表所示: RGB色彩模型和YCbC ...

  9. java枚举和注解

    枚举 一.枚举(enumeration) 是一组常量的集合,可以理解为:枚举属于一种特殊的类,里面只包含一组有限的特定的对象,构造方法默认为private. 二.枚举的两种实现方式 1.自定义实现枚举 ...

  10. 编译安装Python出现“pip is configured with locations that require TLS/SSL, however the ssl.....”

    ubuntu: sudo apt-get install libssl-dev Cenos: sudo yum install openssl-devel 重新编译: ./configure --en ...