开源运动广受欢迎,并且在软件开发史上写下了浓重一笔。但是它影响最深远的地方在哪呢?有史以来,最成功的开源“项目”又是什么呢?
事实上,总体来看,Web不就是开源运动最大的成功么?
可能最有名的例子就是隐藏域众多网站背后的LAMP,也就是Linux、Apache、MySQL和PHP。但当你仔细考虑后,你会发现更多。
下面列出了Web得以运转的一些开源项目。
Web browsers -网络浏览器
在网络浏览器市场中,虽然微软的封闭源码软件IE浏览器仍然占有很大的份额,但其它功能相似的开源项目已经流行起来,并在不断壮大。像 Mozilla公司的Firefox浏览器(它是开源的,还有Flock、PaleMoon)。还有增长迅速的基于Webkit的浏览器,像 Safari,但最著名的是Chrome浏览器。
如果把手机网络也算到这里面,其中Webkit主宰着iPhone、Android和Blackberry手机中的浏览器。
Web server software - Web服务器软件
迄今为止,Apache是使用范围最广的网络服务器软件,它是开源的,但是一个叫做Nginx的轻量级服务器软件在最近几年开始流行起来。事实上,三大顶级网络服务器软件中有两个是开源的(排名第二的微软的IIS是例外,但其距离第一相差甚远)。
另外,大量服务器端底层软件也是开源的。例如,很多大流量网站使用Varnish作为与网站访问者之间的缓存层,而使用Memcached作为与网站数据库之间的缓存层。这只是众多例子中的两个。
Scripting languages and web frameworks -脚本语言和Web框架
网络上使用的大部分编程和脚本语言都是开源的,比如PHP、Perl、Python、Ruby等。
但是,很少有网站完完全全是从零开始。毫不夸张的说,有成百上千的开源内容管理系统(CMS)和网络框架来协助开发人员,例如WordPress、Drupal、Ruby on Rails、Django、Joomla等。
Databases -数据库
开源软件MySQL是目前为止最流行的网站数据库,但还有其它功能相似的开源软件,比如PostgreSQL,更不用说近来出现的众多“非关系型(NoSQL)”数据库。
既然我们说到了底层软件,那就不得不提一下每次我们使用互联网或因特网上的任何东西时都要依靠的基础系统:
DNS -域名解析系统
Web(就此而言是整个因特网)离开了域名解析系统就一无是处。大家都知道,域名解析系统可以让用户使用像example.com之类的域名,而不是IP地址。BIND几乎是DNS服务器(亦称名称服务器)软件的实际标准,并且,你现在可能已经猜到了,它是开源的。
Server operating systems -服务器操作系统
所有网站都必须在服务器上运行,而那也是开源的统治领域。虽然Windows统治着桌面领域,但是网站赖以运行的服务器大部分采用开源的Linux操作系统,其他比较流行的选择是freeBSD和OpenBSD。
开源的诱惑
由于在许多情况下,开源软件能够提供与商业的封闭源码软件相同的性能,并且又是免费的,所以开源软件如此流行并不奇怪。免费是一个难以挑战的价格。
假如Web不是运行在所有这些免费软件上,那么它很可能需要一段艰苦的过程,才能让人们广泛接受。
注意我们并没说过Web中没有任何封闭源码软件,而那显然是存在的。但是,从统计数据看,Web开源统治领域中真正的例外是微软的基于Windows系列系统。
除了那个,你通常需要深入研究才能发现更多私有封闭源码技术,像路由器和类似设备上的操作系统。但那是因特网,而不是Web。
结束语
多亏了80年代因特网、便捷通讯以及合作与共享的兴起,开源运动才得以蓬勃发展。在90年代,当Web诞生于顶层因特网设备时,开源运动已经准备好助其一臂之力了。
没有人会否认开源统治着Web的大部分。开源和Web是一个合作共生的关系,互利互惠,合作共赢。这就是为什么我们认为Web可以说是迄今为止 是开源最大的成功。(我们并没有否定Tim Berners-Lee的意思。注:Tim Berners-Lee,万维网之父、第一位站长,参见《互联网历史上15个划时代的“第一”》)
译文出处:伯乐在线- 职场博客
译文链接:http://www.jobbole.com/entry.php/498
原文作者:Pingdom 编译:伯乐在线 敏捷翻译组- 朱勇
转自:http://www.oschina.net/news/15690/the-web-is-the-biggest-open-source-success-of-all
相关推荐
事实上,总体来看,Web不就是开源运动最大的成功么? 开源运动广受欢迎,并且在软件开发史上写下了浓重一笔。但是它影响最深远的地方在哪呢?有史以来,最成功的开源“项目”又是什么呢? 事实上,总体来看,Web不...
"禅道开源版"是一款专为中国软件开发团队设计的项目管理软件,其核心目标是帮助团队有效管理软件开发过程中...总的来说,禅道开源版是一个值得信赖的项目管理工具,它将助力团队实现更高效的协作,推动项目的成功实施。
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
1. **源码开放性**:开源软件的最大特点就是其源代码是公开的,允许任何人查看和修改。对于"彩虹代刷网",这意味着开发者可以根据自己的需求进行二次开发,添加新功能,修复问题,或者优化系统性能。 2. **框架与...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
它已经在众多高流量网站中成功部署多年,包括俄罗斯最大的门户网站Rambler Media以及中国的一些知名站点如新浪博客、搜狐通行证、网易新闻等。 Nginx之所以能够获得如此高的评价,主要得益于以下几个特点: - **高...
淘宝网通过综合运用Linux操作系统、JBoss Application Server、Apache Web服务器以及Oracle和MySQL数据库等开源技术,成功构建了一个高度可扩展、高可用性的电子商务平台。这种基于开源技术的架构不仅降低了成本,还...
首先,图片上传是Web应用中常见的功能,它允许用户上传个人照片、产品图片或其他图像到服务器。在PHP中,实现这一功能涉及的主要步骤包括文件上传表单的设计、服务器端的文件处理以及错误处理。 1. **文件上传表单...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
最大限度地减少时间和费用开发自定义的DSL(领域特定语言在Java)要求。 日志服务器 Apache Flume.tar Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就...
在IT行业中,Tomcat是一款广泛使用的开源Java Servlet容器,它主要负责执行Java Web应用程序,包括JSP和Servlet。本文将详细解析如何配置Tomcat作为Web服务器环境,以便开发者能够顺利地部署和运行自己的Web应用。 ...