WEB已死? HTTP将死?还是Browser会死?—— 一篇迟来的脚注

标签: TMT乱弹 媒体供稿 万维网 因特网 接入方式 | 发表时间:2010-08-20 03:40 | 作者:魏武挥 cgeek
分享到:
出处:http://weiwuhui.com

网易科技《数字与人》专栏供稿,得到网易科技的许可,在此同步发出。

《连线》的这篇东西,不无商业目的。文章很明显带有站在苹果(以及facebook)这一边向google叫板的味道,毕竟google是web的最大玩家(昨儿还传言说要推出google的平板电脑以及web应用商店)。巨头们的竞争,不是市场这个层面上的,更不是什么应用层面上的,而是标准、规则、接入方式等。接入因特网有各种路径,价值上讲殊途同归。但从商业价值上讲,路径不赚钱,把持路径的人才赚钱。这一场对接入方式的竞争,谁将问鼎,尚未可知。说白了,这篇文章,可以视为很高档的关于架构级别的一场口水仗的开端。

———— 全文的分割线 ————

《连线》最近又语出惊人了,安德森和沃尔夫合伙写了一篇《万维网已死 因特网永生》的长文(英文原版中文译言版本),引起了网络舆论的普遍关注。

从技术角度讲,这篇文章的标题在理论上是成立的,因为万维网的确不等于因特网,作为因特网最重要的组成部分,它和其它一些应用,比如电子邮件、usenet(新闻组)等构成了因特网(事实上,严格点讲,因特网和互联网都不是同一个东西)。万维网的三要素中的两样东西是所谓的“超文本标志语言”(HTML)和“统一资源标志符”(URI),我们可以简单地把它理解为“内容”或者“信息”。而能够展示出这些“超文本”的,就是一个客户端软件:浏览器。很难想像普通用户使用一台没有装浏览器的电脑,是怎么接入万维网的。但请注意,不是因特网,比如想像一下你打开emule这种下载工具,在这个软件里搜寻你要的资料,并启动下载,或者用foxmail收发一下邮件,甚至是用IM进行聊天。整个过程,和万维网没什么关系。

这就是涉及到万维网三要素中的另外一个重要部分:超文本传送协议(HTTP)。在浏览器中,你只要敲击一个网址,大部分情况下,前面都带有http://的字样。有时候你可能会发现,是ftp://的字样,是的,协议变了,用的是FTP数据传送标准。在上面一个emule例子中,你又发现一个“ed2k://”的东西,它也不是http协议。这说明,我们的电脑,和服务器上的那些内容或信息,互联互通的方法,不仅仅是HTTP。

了解上面这些,有助于了解《连线》所谓的“万维网已死”中的万维网究竟是什么意思。我们再想像一下,你有一台可以上网(也就是接入因特网)的电脑,但你没有浏览器,你装了Foxmail(电子邮件客户端,支持的是诸如POP、SMTP、IMAP等协议)、CuteFTP(FTP客户端工具)、eMule(P2P下载工具),你同样可以到因特网上找寻各种信息,只不过,你很难造访类似www.163.com的网站了,或者说,你这个技术狂人使用FTP把这个网站(如果它不介意的话)全部下载下来,然后利用记事本这种古老但不乏通用性的小软件,在那里阅读这个网站上的代码和文字共舞的信息——这一点,理论上成立的。

但是,如果你不使用电脑,使用的是一部手机呢?

用手机浏览网页的可能性还是很大的,但并非全部。在大摩最近的报告中提到,不同操作系统的智能手机用户对于使用浏览器访问HTML页面的比例并不相同。Iphone最高,55%,symbain(诺基亚)22%,android手机只有10%。同样是这份报告,它预测APP(手机应用软件)和Browser user(浏览器用户)的比例虽然都有显著上升,但基本还是维持对半的比例。

换句话说,用手机接入因特网的人,并不见得非要去访问www.163.com这个网站,而事实上,大部分在万维网上运行的网站,非常不利于手机的浏览。于是,人们发明了WAP这种协议,一种简化了的无线接入因特网的数据传输标准,WAP比HTTP年轻许多,97年才有WAP论坛,而正是在这个论坛的努力下,WAP才成为今天移动终端接入因特网的主要协议之一。

另外,有些手机应用则使用socket连接方法(比如说手机游戏,或大型公司制作的APP,),这种方法可以使得服务器端主动向手机客户端推送数据,从而保持两者数据的实时与同步。如果使用http协议进行连接,则服务器需要等到客户端发送一次请求后才能将数据传回给客户端(试想一下你的android手机中关于软件的更新?你并没有要求检查是否更新,但服务器就是知道你需要更新了)。很明显,socket连接的效率更高,虽然它谈不上是一种协议,但使用socket连接并自编通信协议这种直入底层的方法,已经抛弃了HTTP这个应用层级的协议。

《连线》这篇文章大谈的就是移动终端(当然,它不断地使用ipad这个例子,搞得象是篇替苹果鼓吹的软文)接入因特网。在移动终端上,HTTP的确在很多场合下被搁置不用,如果我们承认未来移动终端是接入因特网的主要方式而不是桌面终端的话,说一句“The Web is Dead”也没什么奇怪。事实上,在这篇文章的背后,我以为,《连线》在鼓吹移动终端将战胜桌面终端,为了文章的眼球,大呼一句“web is dead”的背后,说的其实是接入因特网的方式将发生变化

《连线》持有这种论调由来已久,早在97年,它就发布过一篇预言浏览器将死的文章,当时引起了很多反对声。浏览器是使用万维网的重要工具,《连线》当年是够激进的,但我以为,还不够激进,因为它当时说要死的,不是万维网,而只是接入万维网的工具。今天,在移动终端风起云涌之下,它终于扯下了羞答答的面纱,直接拷问万维网:你还能活着么?某种程度上讲,这篇文章是13年后《连线》的脚注。只不过,以《连线》一贯语不惊人死不休的编辑风格,在大家都明白智能手机上APP大行其道的今天,再说一句“Kiss your browser goodbye”,又有何意义呢?

我看到了一些反对的文章,这些文章其实在谈的是“web应用”——这个名词,有很多误解。很多人以为,web应用就是架设在因特网上的应用,比如说,我用客户端收电子邮件,也可以改为用http的方式,在浏览器里收发邮件。严格一点讲,如果我不再使用http协议去收发邮件,那就不是web应用(万维网应用),虽然它还是因特网上的应用。智能手机里有相当多替代接入万维网方式去接入因特网的应用,比如,使用客户端,而不是傻乎乎地打开一个浏览器,敲入http://www.gmail.com吧?

1997年,google作为一个公司都还不存在,《连线》大呼告别浏览器,这话的确说得早了些。2010年,智能手机出货量可能会超过PC和笔记本总和,APP下载光苹果系就已经超过40亿次。《连线》说:万维网已死,这种对接入方式的趋势判断可能真的是正确的。

只不过,对一个小孩说,你正在迈向死亡,这是大多数和这个小孩有关的人所不能听的一句话罢了。

(本文撰写,得到鲜果梁公军先生的不少帮助,特此感谢)


Copyleft © 2010 知识共享署名-非商业性使用-禁止演绎 注意:转载勿改标题!
ItTalks -- 魏武挥的Blog (digitalfingerprint:fc4f8fc31f70097eea4b780b13146415)

欢迎 follow我的微博 分享我的分享

与本日志可能相关的文章有:

相关 [web http 将死] 推荐:

WEB已死? HTTP将死?还是Browser会死?—— 一篇迟来的脚注

- cgeek - It Talks--上海魏武挥的博客
网易科技《数字与人》专栏供稿,得到网易科技的许可,在此同步发出. 《连线》的这篇东西,不无商业目的. 文章很明显带有站在苹果(以及facebook)这一边向google叫板的味道,毕竟google是web的最大玩家(昨儿还传言说要推出google的平板电脑以及web应用商店). 巨头们的竞争,不是市场这个层面上的,更不是什么应用层面上的,而是标准、规则、接入方式等.

http协议:Web前端-HTTP Cache-control/浏览器缓存(转)

- - 互联网 - ITeye博客
HTTP协议分别在 1.0 / 1.1 两个时代推出了 Expires / Cache-control 两种cache策略,这里我们无需了解全部的细节,无需记住整个RFC内容,但是当我们需要使用HTTP cache策略时,我们需要注意以下细节:. Expires 是HTTP 1.0 那个时代的东西了,目前来看,可以不使用了,因为HTTP 1.0 的user agent占有率在 0.1% 以下(我们主要面向的web浏览器均默认使用HTTP 1.1),Cache-control 是 HTTP 1.1 的新特性,也是我们主要做文章使用cache策略的工具.

使用HTTP Headers防御WEB攻击(Part3)

- - FreeBuf.COM | 关注黑客与极客
在FreeBuf之前发布的《. 使用HTTP Headers防御WEB攻击(Part1) 》,《. 使用HTTP Headers防御WEB攻击(Part2) 》中讲述了如何使用HTTP Headers对WEB攻击进行防御,比如使用X-Frame-Options以及X-XSS-Protection.

web基础-web工作原理,http协议,浏览器缓存

- - 浏览器 - 互联网 - ITeye博客
4,cookie和session. 平时用浏览器,输入网址后回车,页面响应我们想要浏览的内容,简单操作的背后蕴涵了什么原理. 当输入url回车后,客户端(浏览器)会去请求DNS服务器,通过DNS获取域名对应的IP地址,然后通过这个地址找到对应的服务器,要求建立TCP连接,建立连接,客户端发送httpRequest(请求包)后,服务器接收并开始处理请求,调用自身服务,返回httpResponse(响应包),客户端收到响应包后开始渲染body主体,等到全部接收,断开与该服务器端的TCP连接.

压力测试工具集合【ab,webbench,Siege,http_load,Web Application Stress】

- - 小彰
-------------------------------------------------- 1 Apache附带的工具ab. ab的全称是ApacheBench,是Apache附带的一个小工具,专门用于HTTP Server的benchmark testing,可以同时模拟多个并发请求.

Web将死,App当立?

- - 创意科技 - 果壳网
作为一位著名的软件开发者和博客世界的先驱者,戴夫·温纳(Dave Winer)于1997年创办了Scripting News(最早的博客网站之一). 由于他总是与微软、谷歌等大公司隔空对骂,所以在博客世界颇为出名. 最近他在博客中谈了自己对于web将死的看法. “我总是听人说道,web将死,app才是未来.

HTTP Headers 入门

- johnny - Time Machine
非常感谢 @ytzong 同学在twitter上推荐这篇文章,原文在此. 本文系统的对HTTP Headers进行了简明易懂的阐述,我仅稍作笔记. 什么是HTTP Headers. HTTP是“Hypertext Transfer Protocol”的所写,整个万维网都在使用这种协议,几乎你在浏览器里看到的大部分内容都是通过http协议来传输的,比如这篇文章.

HTTP基础

- - ITeye博客
HTTP的结构主要包括下面几个要点:. HTTP的版本主要有1.0,1.1 和更高版本.    1.1 及以上版本允许在一个TCP连接上传送多个HTTP协议,1.0能 .    1.1 及以上版本多个请求和响应可以重叠,1.0不能.    1.1 增加了很多的请求头和响应头.     一个请求行,若干小心头,以及实体内容,其中的一些消息头和实体内容是可选的,消息头和实体内容需要空行隔开.

HTTP Header 详解

- - 博客园_Ruby's Louvre
HTTP(HyperTextTransferProtocol)即超文本传输协议,目前网页传输的的通用协议. HTTP协议采用了请求/响应模型,浏览器或其他客户端发出请求,服务器给与响应. 就整个网络资源传输而言,包括message-header和message-body两部分. 首先传递message- header,即 http header消息.

http-kit 1.2 发布

- - 开源中国社区最新新闻
Http-kit 是主要由Java 和Clojure开发,为Clojure定制的零依赖的Http lib,包括异步的高性能HTTP Server 和 HTTP Client. 在普通的PC上进行性能测试时,http-kit server 每秒能处理数万个请求. 修复处理文件上传时,content-type没能正确处理.