撑起整个互联网的7大开源技术

撑起整个互联网的7大开源技术
很多人可能尚未意识到,我们使用的电脑中运行有开源软件,手机中运行有开源软件,家里的电视也运行有开源软件,甚至小小的数码产品中也运行有开源软件,尤其是互联网服务器端软件,几乎全部是开源软件。

开源软件现在成为整个互联网时代的支撑技术,你可能已经无法离开由开源软件构建起来的网络世界了。下面我们就来看看一些最重要的开源技术。

  1. 为互联网而生的操作系统Linux

Linux 是一款免费的操作系统,诞生于1991年,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。

它能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux 继承了 Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的 Unix 兼容产品。

Linux 可以说是已经无处不在,像 Android 手机就是以 Linux 为基础开发的,世界上大多的超级计算机也都采用的 Linux 系统,大多数的数据中心使用 Linux 作为其支撑操作系统。谷歌、百度、淘宝等都通过 Linux 提供了我们每天用的互联网服务。Linux 在航空控制系统中也扮演着重要角色。

  1. 加密互联网的安全协议 OpenSSL

OpenSSL 是套开放源代码的软件库包,实现了 SSL 与 TLS 协议。OpenSSL 可以说是一个基于密码学的安全开发包,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及 SSL 协议,并提供了丰富的应用程序供测试或其它目的使用。

也可以说 OpenSSL 是网络通信提供安全及数据完整性的一种安全协议,SSL 可以在 Internet 上提供秘密性传输,能使用户/服务器应用之间的通信不被攻击者窃听。OpenSSL 被网银、在线支付、电商网站、门户网站、电子邮件等重要网站广泛使用。

去年 OpenSSL 爆出安全漏洞,因为其应用如此之广,该漏洞爆出让整个互联网都为之震颤。

  1. 互联网的记忆——MySQL

MySQL 是一个开源的小型的数据库管理系统,原开发者为瑞典的 MySQL AB 公司,该公司于2008年被 Sun 公司收购。2009年,甲骨文公司(Oracle)收购 Sun 公司,MySQL 成为 Oracle 旗下产品。

很多信息都是存在数据库里面的,很多工程师在开发一些的小型项目时都会采用这个 MySQL 数据库。MySQL 为 C、C++、JAVA、PHP 等多重编程语言提供了 API 接口。而且支持 Windows、Mac、Linux 等多种系统。这种广泛的支持使其得到更多开发者的青睐,MySQL 是开发者需要掌握的数据库之一。

MySQL 最初为小型应用而开发,但现在的 MySQL 已经不是一个小型数据库了。基本上所有的互联网公司都会使用这个数据库系统,一些金融交易也会采用 MySQL 作为数据库引擎。MySQL 通过相应的调优既可以支撑大规模的访问,又可以保证数据安全性,已经成为威胁传统商业数据库系统的重要力量。

  1. 万能开发工具 Eclipse

Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。Eclipse 最初由 OTI 和 IBM 两家公司的IDE 产品开发组创建,起始于1999年4月。目前由 IBM 牵头,围绕着 Eclipse 项目已经发展成为了一个庞大的 Eclipse 联盟,有150多家软件公司参与到 Eclipse 项目中,其中包括 Borland、Rational Software、Red Hat 及 Sybase 等。

就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。很多 Java 编程软件都是在 Eclipse 平台开发的,还有包括 Oracle 在内的许多大公司也纷纷加入了该项目,并宣称Eclipse 将来能成为可进行任何语言开发的 IDE 集大成者,使用者只需下载各种语言的插件即可。

Eclipse 并不是一个直接服务于消费者的产品,它更像一个工匠手中万用工具,用 Eclipse 开发者可以打造出各种充满创造性的服务来满足最终用户的需求。

  1. 互联网的门卫 Apache

Apache HTTP Server(简称 Apache)是 Apache 软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,也是最流行的 Web 服务器端软件之一,市场占有率达60%左右。它快速、可靠并且可通过简单的 API 扩展,它可以和各种解释器配合使用,包括 PHP/Perl/Python 等。

Apache 就像一个负责的门卫,管理着服务器数据的进出。每当你在你的地址栏里输入http://XXX.com的时候,在遥远的远端,很有可能正是一台跑着 Apache 的服务器,将你需要的信息传输给浏览器。

  1. 大数据的心脏 Hadoop

Hadoop 是一个能够对大量数据进行分布式处理的软件框架,由 Apache 基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。Hadoop 一直帮助解决各种问题,包括超大型数据集的排序和大文件的搜索。它还是各种搜索引擎的核心,比如 Amazon 的 A9 和用于查找酒信息的 Able Grape 垂直搜索引擎。阿里巴巴集团在商品推荐、用户行为分析、信用计算领域也都有 Hadoop 的应用。

在“大数据”已经成为潮流的当下,Hadoop 已经成为最主要的一项技术。可以毫不夸张的说,没有Hadoop,就没有大多数的大数据应用。可以说对一个不知道 Hadoop 的程序员而言,你已经out了。

  1. 互联网的“排版引擎” WebKit

说是浏览器内核,其实“排版引擎”更容易理解一些。通过服务器传输给浏览器的信息只是一串乱糟糟的文本。要看到我们平时看到精美的网友,需要浏览器内核对这些文本进行解析,将枯燥的描述“画”成美丽的浏览界面。

WebKit 是一个开源的浏览器引擎,与之相应的引擎有 Gecko(Mozilla Firefox 等使用的排版引擎)和 Trident(也称为 MSHTML,IE 使用的排版引擎)。根据 StatCounter 的浏览器市场份额调查,于2012年11月,Webkit 市占超过了40%,它已经成为拥有最大市场份额的排版引擎,超越了 IE 所使用的 Trident 及 Firefox 所使用的 Gecko 引擎,并且 WebKit 份额正在逐年增加。

目前几乎所有网站和网银已经逐渐支持 WebKit。WebKit 内核在手机上的应用也十分广泛,例如苹果的 Safari、谷歌的 Chrome 浏览器都是基于这个框架来开发的。

总结

很多人可能尚未意识到,我们使用的电脑中运行有开源软件,手机中运行有开源软件,家里的电视也运行有开源软件,甚至小小的数码产品中也运行有开源软件,尤其是互联网服务器端软件,几乎全部是开源软件。毫不夸张地说,开源软件已经渗透到了我们日常生活的方方面面。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/447269.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis整合springboot实现哨兵模式

整体结构 RedisConfig package com.cc.springredis.config;import com.cc.springredis.RedisUtil; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.R…

Redis整合springboot实现集群模式

整体结构 Redis.config package com.cc.springredis.config;import com.cc.springredis.RedisUtil; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection…

一个穷人是从什么时候开始有钱的?

2010年,文野31岁那年,买房后第二年,完成了「人生中最重要的一次转变」。 这一年,他在心里对自己的定位,从穷人变成了有钱人。 「一些人哪怕有钱了,心里也永远甩不脱穷的影子。」这是我曾经在《 阶段性胜…

Redis整合springboot实现消息队列

publisher消息的发出 代码整体的结构 publisherConfig package com.cc.springbootredispublisher.config;import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.conne…

人最重要的能力是什么?

我见过很多人有能力、能成功,但并不幸福。人最重要的能力是什么? 人生最重要的能力是什么?我的答案是,随时保持内心平静的能力。 我开始想到的是“坚持”,后来我认为不对,“坚持”仅仅是成功所必备的能力,并不是人生…

Redis数据缓存

代码的整体结构 配置文件 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apac…

hevc/265 开源项目及相关

1.X265 个是有两个版本&#xff0c;一个是国内人搞的&#xff0c;是国外公司搞的 1.国外公司版本 只是一个编码器&#xff0c;目前没有支持解码 开发语言 c web url: www.x265.org source url: https://bitbucket.org/multicoreware/x265 x265 is an open-source projec…

IPFS星际文件系统的简介

IPFS简介 IPFS&#xff08;InterPlanetary File System&#xff09;叫星际文件传输系统&#xff0c;本质是一个基于点对点的分布式超媒体分发协议&#xff0c;它整合了分布式系统&#xff0c;为所有人提供全球统一的可寻址空间&#xff0c;因为他具有良好的安全性、较高的传输…

ARM和NEON指令 very nice

在移动平台上进行一些复杂算法的开发&#xff0c;一般需要用到指令集来进行加速。目前在移动上使用最多的是ARM芯片。 ARM是微处理器行业的一家知名企业&#xff0c;其芯片结构有&#xff1a;armv5、armv6、armv7和armv8系列。芯片类型有&#xff1a;arm7、arm9、arm11、corte…

IPFS下载安装和配置

参考链接 因为这个网站访问速度很慢&#xff0c;我提供了IPFS的MAC版本。有需要的查看我的资源下载。 大致流程 安装 $ ls go-ipfs_v0.4.10_darwin-amd64.tar.gz $ tar xvfz go-ipfs_v0.4.10_darwin-amd64.tar.gz x go-ipfs/build-log x go-ipfs/install.sh x go-ipfs/ipfs…

IPFS的相关操作命令

新增文件 在桌面新建名字为1121的文件夹&#xff0c;在文件夹里面新建file.txt文件&#xff0c;在文件里面输入数据&#xff0c;保存退出 $ pwd /Users/CHY/Desktop $ mkdir 1121 $ cd 1121/ $ vi file.txt $ cat file.txt 哈哈&#xff0c;为什么只有我不快乐 给文件输入内容…

Neon Intrinsics各函数介绍

#ifndef __ARM_NEON__ #error You must enable NEON instructions (e.g. -mfloat-abisoftfp -mfpuneon) to use arm_neon.h #endif/*(1)、正常指令&#xff1a;生成大小相同且类型通常与操作数向量相同的结果向量&#xff1b; (2)、长指令&#xff1a;对双字向量操作数执行运算…

npm安装包总是失败了的,请参考

镜像使用方法 &#xff08;三种办法任意一种都能解决问题&#xff0c;建议使用第三种&#xff0c;将配置写死&#xff0c;下次用的时候配置还在&#xff09;: 1.通过config命令 npm config set registry https://registry.npm.taobao.org npm info underscore //&#xff08…

arm 开发工具比较(ADS vs RealviewMDK vs RVDS)

ADS REALVIEW MDK RVDS 公司 ARM Keil&#xff08;后被ARM收购&#xff09; ARM 版本 最新1.2 ,被RVDS取代 最新4.0 是否免费 破解情况 有 有 工程管理 CodeWarrior IDE nVision IDE Eclipse/ CodeWarrior IDE 编译器 ARM C compiler for AD…

解决macOS Catalina(10.15)解决阻止程序运行“macOS无法验证此App不包含恶意软件”

在终端里面输入如下命令 sudo spctl --master-disable 下面图片对比执行命令前后&#xff0c;安全性与隐私 界面上显示的差异&#xff1a;使用命令之后&#xff0c;界面变了

MSYS2 + MinGW-w64 + Git + gVim 环境配置

原文 http://dantvt.is-programmer.com/posts/63161.html 以前用 MSYS 的多&#xff0c;最近重装系统顺带把环境重新配一下&#xff0c;发现 MSYS2 挺顺手的。 一、安装 MSYS2 先装 MSYS2 的好处是之后可以将 $HOME 设为 /home/name/&#xff0c;再装其他 *nix 系工具时配置…

MAC版 的最新Docker 2.2版本配置国内代理的解决办法

点击Docker图标&#xff0c;选择Preference选项&#xff0c;进行国内代理的问题 输入内容如下 {"experimental": false,"debug": true,"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn", "https://hub-mirror.c.163.…

常用的Homebrew的命令的使用

&#xff08;1&#xff09;安装软件&#xff1a;brew install 软件名&#xff0c;例如&#xff1a;brew install wget &#xff08;2&#xff09;搜索软件&#xff1a;brew search 软件名 &#xff08;3&#xff09;卸载软件&#xff1a;brew uninstall 软件名 &#xff08;…

微软正式提供Visual Studio 2013正式版下载(附直接链接汇总)

转自 http://www.iruanmi.com/visual-studio-2013/ 微软已经向MSDN订阅用户提供了Visual Studio 2013正式版镜像下载&#xff0c;不过非MSDN用户可以在微软的Visual Studio 2013官方网站上下载到正式版镜像&#xff08;通过下载专业版本&#xff0c;已验证与MSDN版本一致&…

《算法的乐趣》作者王晓华访谈:多看、多做、多想是秘诀

摘要&#xff1a;王晓华是一位热衷于算法研究的程序员&#xff0c;他是CSDN算法专栏的超人气博主&#xff0c;也是《算法的乐趣》一书的作者。近日&#xff0c;笔者采访了王晓华&#xff0c;请他分享算法的经验之道。 王晓华是一位热衷于算法研究的程序员&#xff0c;他是CSDN…