互联网是如何工作的?

我们猜你每天都在使用互联网。但是当你在浏览器里输入一个像 https://djangogirls.org 这样的地址并按 回车键的时候,你真的知道这背后发生了什么吗?

你需要了解的第一件事是一个网站只是一堆保存在硬盘上的文件。 就像你的电影、 音乐或图片一样。 然而,网站的唯一的不同之处是: 网站包含一种称为 HTML 的代码。

如果你不熟悉编程,一开始你会很难理解 HTML。但你的浏览器 (如 Chrome、 Safari、 Firefox 等) 却很喜欢它。 Web 浏览器懂得这些代码,遵循这些代码的指令,并如你所想的那样展示这些文件。

就像我们对待每个电脑文件一样,我们需要把 HTML 文件存储在硬盘的某个位置。 但在互联网,我们使用特殊且功能强大的电脑,我们称之为服务器。 它们没有屏幕、鼠标或者键盘,因为它们的主要目的是存储数据,并用它来提供服务。 这就是为什么它们被称作服务器 -- 因为他们用数据服务你。

好了,但是你想知道互联网看起来是什么样子的,对吗?

我们给你画了一幅画!它看起来像这样:

互联网是如何工作的?

看起来杂乱不堪,对吗? 事实上,它是一个由互相连通的机器 (上面提到的服务器) 组成的网络。 数以十万计的机器! 很多,很多数以公里长的电缆分布在全世界! 你可以访问一个海底电缆地图网站( http://submarinecablemap.com/ )来看一下这个网络有多么复杂。 这是网站上的一个截屏:

互联网是如何工作的?

它看起来超棒,对吧? 但是很明显,我们不太可能用电缆去连接互联网上任意的两台电脑。为了连接一台机器 (比如存储 https://djangogirls.org 的机器), 我们需要通过很多不同机器之间的传递来完成。
它看起来像这样:

互联网是如何工作的?

想象一下当你键入 https://djangogirls.org 时,相当于你发送了一封信说:“亲爱的 Django Girls,我想看看 djangogirls.org 网站,请将它发送给我!”

你的信件去了离你最近的邮局。 然后它又辗转到了距离收件人稍近的邮局,以此类推直到到达了收件人的目的地。 它与现实发送信件的不同之处就在于,如果你将许多信件 (类比数据包) 发送到同一个地方,他们可以通过不同的邮政局 (类比路由器)。 这取决于邮局的分布情况。

Figure 1.4

这就是它的原理。你发送一些信息,然后希望得到一些回复。虽然你使用的不是纸和笔,而是字节数据,但是工作原理是一样的!

区别于现实生活中包含街道,城镇,邮编信息的地址,网络使用IP地址。你的电脑首先会要求DNS(域名服务器)解析 djangogirls.org 为一个IP地址。这有点像老式的电话簿,如果你想要一个联系人的电话和地址那么你就要通过查找姓名来定位到你需要的信息。

当你发送一封信时,它需要地址邮票等等这些不可或缺的要素来进行正确的传递。同时你也需要通过一种收件人也能看得懂的语言,对吧?你发送到网站的数据包也是类似的。 我们使用一个名为 HTTP (Hypertext Transfer Protocol:超文本传输协议) 的协议来传递我们的信息。

所以基本上,你有一个网站那么你就需要有一台服务器用于网站的托管。当服务器接收到了一个访问请求(收到一封信),它也能将网站内容响应回去(回信)。

既然这是个 Django 教程,你可能会问 Django 做什么。 当你发送一个响应时,你通常不会发送一模一样的东西给每一个人。 发送个性化的信件将会使你的信件更优秀。尤其是发送给那个刚刚给你写信的人,对吧? Django 帮助你创建这些个性化,有趣的信件:)

多说无益 – 让我们开始动手吧!

本文章首发在 LearnKu.com 网站上。
上一篇 下一篇
贡献者:2
讨论数量: 0
发起讨论 只看当前版本


暂无话题~