• 深入理解互联网的原理——服务器、客户端和http协议


    深入理解互联网的原理这个过程中我们需要去解析一下它运行过程里面涉及到的一些主体内容。

    互联网运行的过程,如果我们用户想去浏览到一个网页的话,那么我们需要在客户端去输入一个网址,这个时候我们的客户端会向服务器端发送一个 http 请求,服务器端接收到请求之后会给我们去找到对应的文件后,通过 http 响应的过程将文件回传给我们的客户端,从而在客户端进行一个网页的渲染,最终显示出用户看到的网页效果。

    在这个过程中我们去涉及到了三个主体内容分别是服务器、客户端和 http 协议;那么这三个主体内容我们需要来进行一个具体的了解。

     

     

    服务器

    首先我们看一下服务器,服务器它的英文叫做 server,它本身就是一种特殊的计算机跟我们平时使用的计算机本质是一样的;它本身也包括处理器、硬盘、内存、系统等等;

    不过对于服务器来说,它要提供比我们普通的计算机更加可靠的服务,他需要自己处理数据能力的稳定性、可靠性、安全性等方面有更高的要求。因此,它的这个配置比我们普通的计算机会高很多。

    服务器它的一个作用对于我们网页来说就是用来存储开发人员上传的网页数据,包括 html、css 以及多媒体图片、音视频等等。

    在这个过程中他除了去存储数据之外,还需要去响应我们的 http 的请求,并且对它进行一个处理。在这个过程里边有一个特殊的要求,我们普通的计算机在不使用的时候,可以去进行关机,但是对于服务器来说,他要随时随地提供给用户访问。因此我们使用服务器的话,必须保证它 24小时是不间断工作的,这是我们所说的一个服务器的内容作用和要求。

    但是实际上我们使用的服务器更多已经开始向云服务器进行发展了,云服务器实际上是一种简单、高效、安全、可靠处理能力、可弹性伸缩的一个计算服务。它的这个管理方式比我们的物理服务器也就是上文用的服务器更简单高效。

    用户不需要再去提前购买硬件就可以迅速地创建或者释放更多的云服务器,这是我们将来的一个使用的趋势。当然服务器里面主要作用是用来去存储我们网页相关文件用的这是他在互联网传说里面的一个主要功能。

    客户端

    客户端呢它的英文叫做 clent,也叫做用户端;它指的是我们的普通用户使用的终端,也就是我们用来浏览网页的这个终端,当然客户端它有很多种形式;比如我们现在比较常用的是浏览器以及我们各种移动设备的 app 等等。

    那么我们在 web 开发阶段,最主要的客户端形式还是用浏览器,所以我们要介绍一下浏览器。它是我们用户用来上网的一个程序,我们可以在上面去搜索你想要的各种信息资源这就是浏览器。

    那么浏览器在我们的互联网运行过程中它的功能包含三个:

    第一个用来去发送 http 请求到服务器;

    第二个是去接收服务器发回的这个响应文件;

    第三就是把这一个 html 文件进行渲染,最终展示给用户的一个效果;

    那么作为前端开发来说,大家需要去了解一个小知识点就是全球主流的浏览器有哪些?

    由于 ie 和 Eage浏览器都是属于微软公司的,可以统称他们叫做 ie 浏览器,另外我们还要用到火狐浏览器、 safari 浏览器、 chrome 浏览器、opera 浏览器这五个常用的浏览器。

    这些浏览器最主要的区别,就是浏览器它使用的这一个解析的内核不一样,所有的浏览器由不同的厂商进行提供有不同的浏览器版本,因此它各自版本各自不同的品牌,使用的这个渲染的引擎是不一样的,也就是我们所说的浏览器的内核。他们对Html等这种网络语言支持度不一样,所以说使用不同的浏览器,去加载同一个网页的话可能会有一些渲染的差异。

    那么哪一种内核比较好,我们需要去进行一个比较,在五大主流浏览器里面ie 浏览器使用的这个内核叫做 trident 内核、火狐用的是 geo、safari用的是 webcate、谷歌初期用的 wifcat,后来他自己研发了一个 blink 的内核,实际上它就是在 k 的基础之上进行了一个升级,最后opera浏览器它在初始阶段使用的是 prestal,中间也用到了 webkit,最后升级使用了谷歌的blink 内核。

    在这个里面大家可以发现一个小规律,也就webkit出现的这个场景是不是很多,所以说其实 webkit 的,它这个内核是一个更加好用的内核,那么在我们的学习中,我们使用哪一个浏览器更加合适呢?推荐大家去使用谷歌浏览器,也就是我们的 chrome 浏览器。它的占有率是很高的,还有一点比较重要就是谷歌浏览器里面,自带了开发者调试的工具,对于程序员来说非常友好。所以推荐大家在挑选浏览器的时候,使用我们的谷歌浏览器去进行一个开发使用。

    最后我们再来重申一下,浏览器的几种功能是如何实现的:

    第一个浏览器的功能是用来去发送 http 请求,这个发送的方式大家都比较常见,只不过你没有去强制性的去这样记忆过,发送 http 请求的过程,实际上就是在我们的网址栏里面输入一个网址或者是去点击某一个超级链接,就相当于去发送了 http 请求。

    第二个作用是用来去接收服务器发回的http 响应文件,服务器接收到请求之后会去发回一个 html 文件给浏览器,这时候浏览器需要去进行一个接收。在接收完了这个 html 文件之后,浏览器窗口,根据 html 的相关语法进行最终的渲染,把我们所有的网页内容呢去展示出来。

     

    http 协议

    以上是浏览器的相关知识,最后我们还有一个主体就是 http 协议,实际 http 协议全称叫做 hyper text transfer protocol 叫做超文本传输协议。

    http 协议,是在客户端和服务器之间进行通信用的,那么这个通信过程中包含两个部分,一个是 http 请求,一个是 http 响应。

    http 请求,它的英文叫做 request 请求,在浏览器中根据网址会去向服务器发送对应的请求,在发送的过程中,它的这个发送方法,见上文,在地址栏中输入网址或者是点击超级链接。

    一个网页中对应了很多物理文件,每一个文件它都会去对应一个 http 请求,也就是说我们在发送请求时,有多个请求会同时进行发送。当然它会有先后顺序帮我们进行响应,这是我们所说的 http 请求。

    http 响应,它英文叫做 response响应,服务器接收到请求之后,会给我们响应回来一个 html 文件,这个文件会去传输给客户端并且进行渲染,渲染过程中加载到我们要求去添加某一个图片或者是音频视频的时候,它会再次去发送对应的 http 请求,然后服务器会继续去响应文件过来。

  • 相关阅读:
    svc和ingress的关系
    JAVA安全之Log4j-Jndi注入原理以及利用方式
    Linux
    评论组件--uniapp textarea focus,string.replace
    vue项目+xlsx+xlsx-style 实现table导出为excel的功能——技能提升
    Linux 安装软件包rpm yum
    离子液体定制|甜菜碱离子液体[BetaineC16][H2PO4]修饰猪胰脂肪酶(PPL)
    多测师肖sir_高级讲师_python安装和pycharm(002)
    Java:帮助Java开发人员进行Bean映射的7大框架
    基于数据库的全文检索实现
  • 原文地址:https://blog.csdn.net/zxcv321zxcv/article/details/127697534