分享30款开源软件
欧哥提醒,本文预计阅读预计会超过20分钟。
什么是开源软件?顾名思义就是把软件的源代码开放出来,大家都能看到源代码,大家可以一起研究源代码并对软件的进行优化和改进。
现在越来越多的IT公司对开源软件持开放态度,一方面有了优秀的开源项目,就不用再重复敲代码,可以直接拿来使用;另一方面,自己公司有自研项目,为了发展壮大可以选择将项目开源,让更多的开发者参与进来,通过大家集思广益,一起提升软件的功能和性能!国内很多IT公司也推出了一些高质量的开源项目,比如华为开源了鸿蒙系统、腾讯开源了自研的顶级数据库TBase、 阿里开源了自研的科学计算引擎Mars等……
废话不多说,下面开始介绍
一、WEB应用
1、Nginx
Nginx (engine x) 是俄罗斯人开发出来的一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。其特点是占有内存少,并发能力强,Nginx的并发能力在同类型的网页服务器中表现较好,很多人使用Nginx来做负载均衡器和web反向代理。
支持的操作系统:windows、linux 和 OS X
相关网站:https://nginx.org
2、Lighttpd
Lighttpd是一个轻量级的开源Web服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销、cpu占用率低、效能好以及丰富的模块等特点。广泛的应用于一些嵌入式的web服务器上。
支持的操作系统:Windows、Linux 和 OS X
相关网站:https://www.lighttpd.net/
3、Tomcat
Tomcat服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,主要用于运行JSP 页面和Servlet。因为Tomcat 技术先进、性能稳定,而且免费,因而深受JAVA 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
支持的操作系统:Windows、Linux 和 OS X
相关网站:https://tomcat.Apache.org
Apache HTTP Server(简称Apache),是Apache软件基金会的一个开放源代码的网页服务器,可以在大多数电脑操作系统中运行,由于其具有的跨平台性和安全性,被广泛使用,是自 1996 年以来互联网上最受欢迎的 Web 服务器系统。据称,目前所有网站中 55.3% 是由 Apache 支持的。
支持的操作系统:Windows、Linux 和 OS X
相关网站:https://httpd.apache.org
二、大数据与云计算应用
1、Hadoop
Hadoop是一个由Apache基金会所开发的分布式系统基础架构,被公认是一套行业大数据标准开源软件,在分布式环境下提供了海量数据的处理能力。几乎所有主流厂商都围绕Hadoop开发工具、开源软件、商业化工具和技术服务,Hadoop已经成为大数据的标配框架。
支持的操作系统:Windows、Linux 和 OS X
相关网站:http://hadoop.apache.org
2、Docker
Docker是一个开源的应用容器引擎,开发者可以打包自己的应用到容器里面,然后迁移到其他机器的docker应用中,可以实现快速部署,广泛的被应用于大数据的领域中。基本上做大数据的公司都会使用到该工具。
支持的操作系统:Windows、Linux 和 OS X
相关网站:https://www.docker.com
3、Spark
Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark类似于Hadoop MapReduce的通用并行框架。Apache Spark 声称,“它在内存中运行程序的速度比 Hadoop MapReduce 最多快 100 倍,在磁盘上快 10 倍。Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
支持的操作系统:Windows、Linux 和 OS X
相关网站:http://spark.apache.org
Storm是一个Twitter开源的分布式实时大数据处理系统,被业界称为实时版Hadoop。随着越来越多的场景对Hadoop的MapReduce高延迟无法容忍,比如网站统计、推荐系统、预警系统、金融系统(高频交易、股票)等等,大数据实时处理解决方案(流计算)的应用日趋广泛,目前已是分布式技术领域最新爆发点,而Storm更是流计算技术中的佼佼者和主流。
支持的操作系统:Windows、Linux 和 OS X
相关网站:https://storm.apache.org
Cloud Foundry是业界第一个开源PaaS云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。它声称“由行业领袖为行业领袖构建”,其支持者包括 IBM、 Pivotal、惠普企业、VMware、英特尔、SAP 和 EMC。
支持的操作系统:与系统无关
相关网站:https://www.cloudfoundry.org
CloudStack是一个开源的具有高可用性及扩展性的云计算平台,同时是一个开源云计算解决方案。可以加速高伸缩性的公共和私有云(IaaS)的部署、管理、配置。使用CloudStack作为基础,数据中心操作者可以快速方便的通过现存基础架构创建云服务。
支持的操作系统:与操作系统无关
相关网站:https://cloudstack.apache.org
OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。由NASA(美国国家航空航天局)和Rackspace合作研发并发起,授权的开源代码项目。OpenStack为私有云和公有云提供可扩展的弹性的云计算服务。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。这种很受欢迎的云计算平台声称,“世界上成百上千个大品牌”每天依赖它。
支持的操作系统:与操作系统无关
相关网站:https://www.openstack.org
三、云存储应用
1、Gluster
GlusterFS是一个可高度扩展、可伸缩的分布式文件系统,适用于云存储和媒体流等数据密集型任务。实现了全部标准POSIX接口,并用fuse实现虚拟化,让用户看起来就像是本地磁盘一样。能够处理千数量级的客户端。
支持的操作系统:Linux、Windows
相关网站:https://www.gluster.org
FreeNAS是一套免费开源的NAS服务器,它能将一部普通PC变成网络存储服务器。该软件基于FreeBSD,Samba 及php,支持CIFS (samba), FTP, NFS protocols, Software RAID (0,1,5) 及 web界面的设定工具。用户可通过Windows、macs、FTP、SSH 及网络文件系统 (NFS) 来访问存储服务器;FreeNAS可被安装于硬盘或移动介质USB Flash Disk上。FreeNAS 服务器前途无量;它是组建简单网络存储服务器的绝佳选择
支持的操作系统:与系统无关
相关网站:http://www.freenas.org
Lustre是一个开源、分布式并行文件系统软件平台,具有高可扩展、高性能、高可用等特点。Lustre的构造目标是为大规模计算系统提供一个全局一致的POSIX兼容的命名空间,这些计算系统包括了世界上包含最强大的高性能计算系统。它支持数百PB数据存储空间,支持数百GB/s乃至数TB/s并发聚合带宽。一些最早采用它的用户包括美国的几大国家实验室:劳伦斯·利物莫尔国家实验室、桑迪亚国家实验室、橡树岭国家实验室和洛斯阿拉莫斯国家实验室。
支持的操作系统:Linux
相关网站:http://lustre.org
Ceph是一种为优秀的性能、可靠性和可扩展性而设计的分布式文件系统,是最早致力于开发下一代高性能分布式文件系统的项目。随着云计算的发展,Ceph乘上了OpenStack的春风,进而成为了开源社区受关注较高的项目之一。
支持的操作系统:Linux
相关网站:https://ceph.com
四、操作系统
1、centos
CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS完全开源。
Ubuntu也是开源的,也拥有庞大的社区力量,用户可以方便地从社区获得帮助,提供广受欢迎的Linux发行版,有多个版本:桌面版、服务器版、云版、手机版、平板电脑版和物联网版。声称用户包括亚马逊、IBM、维基百科和英伟达。
相关网站:http://www.ubuntu.com/index_kylin
五、数据库
1、MySQL
MySQL是用C/C++编写的关系型数据库,自称是“世界上最流行的开源数据库”,备受众多互联网公司的青睐,除了免费社区版外,它还有多款收费版。虽然是免费开源的,但是其性能有足够的保证,国内很多IT公司都在使用MySQL。
支持的操作系统:Windows、Linux、Unix 和 OS X
相关网站:https://www.mysql.com
PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统。国内知名的华为高斯数据库和腾讯的TBase数据库均是在该数据库的基础上发展而来的。国内最牛的阿里OceanBase数据库所有代码都是自主研发的,虽然不是PostgreSQL基础上开发出来的,但应该也借鉴了PostgreSQL的很多特性和有点。
支持的操作系统:Windows、Linux、Unix 和 OS X
相关网站:https://www.postgresql.org
MongoDB 是一种 NoSQL 数据库,是一个基于分布式文件存储的数据库。由C++语言编写。旨在为应用提供可扩展的高性能数据存储解决方案。
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库。用户包括 Foursquare、《福布斯》、Pebble、Adobe、领英、eHarmony 及其他公司。提供收费的专业版和企业版。
支持的操作系统:Windows、Linux、OS X 和 Solaris
相关网站:https://www.mongodb.org
4、Cassandra
这种 NoSQL 数据库由 Facebook开发,其用户包括苹果、欧洲原子核研究组织(CERN)、康卡斯特、电子港湾、GitHub、GoDaddy、Hulu、Instagram、Intuit、网飞、Reddit及其他科技公司。它支持极其庞大的数据集,声称拥有非常高的性能和出色的耐用性和弹性。可通过第三方获得支持。
支持的操作系统:与操作系统无关
相关网站:https://cassandra.apache.org
5、CouchDB
CouchDB是用Erlang开发的面向文档的数据库系统,这种 NoSQL 数据库将数据存储在 JSON 文档中,这类文档可通过 HTTP 来加以查询,并用 JavaScript 来处理。CouchDB现在归 IBM 所有,它提供一款专业人员支持的软件版本,用户包括:三星、Akamai、Expedia、微软游戏工作室及其他公司。
支持的操作系统:Windows、Linux、OS X 和 Android
相关网站:https://couchdb.apache.org
Neo4J一个高性能的NOSQL图形数据库,它将结构化数据存储在网络上而不是表中,自诩为“世界上领先的图形数据库”,用于欺诈检测、推荐引擎、社交网站、主数据管理及更多领域。用户包括电子港湾、沃尔玛、思科、惠普、埃森哲、CrunchBase、eHarmony、Care.com 及另外许多企业组织。
支持的操作系统:Windows 和 Linux
相关网站:https://neo4j.com
六、开发工具和组件
1、Bugzilla
Bugzilla 是开源社区的宠儿,用户包括 Mozilla、Linux 基金会、GNOME、KDE、Apache、Libreoffice、Open Office、Eclipse、红帽、Novell及其他公司。这款软件缺陷追踪系统(bugtracker)的重要功能包括:高级搜索功能、电子邮件通知、预定报告、时间追踪、出色的安全及更多特性。
支持的操作系统:Windows、Linux 和 OS X
相关网站:https://www.bugzilla.org
Eclipse 项目最为知名的是,它是一种大受欢迎的面向 Java 的集成开发环境(IDE),它还提供面向C/C++和 PHP 的 IDE,此外提供另外一大批开发工具。主要支持者包括冠群科技、谷歌、IBM、甲骨文、红帽和 SAP。
支持的操作系统:与操作系统无关
相关网站:https://www.eclipse.org
3、Ember.js
Ember.js是一个开源的JavaScript客户端框架,用于开发Web应用程序并使用MVC架构模式,这种框架用于“构建野心勃勃的 Web 应用程序”,旨在为 JavaScript 开发人员提高工作效率。官方网站上显示用户包括雅虎、Square、Livingsocial、Groupon、Twitch、TED、网飞、Heroku 和微软。
支持的操作系统:与操作系统无关
相关网站:https://emberjs.com
4、Node.js
Node 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言,它让开发人员可以使用 JavaScript,编写服务器端应用程序。开发工作之前由 Joyent 管控,现在交由 Node.js 基金会监管。用户包括 IBM、微软、雅虎、SAP、领英、贝宝和网飞。
支持的操作系统:Windows、Linux 和 OS X
相关网站:https://nodejs.org/en/
5、React Native
React Native 由 Facebook 开发,这种框架可用于使用 JavaScript 和 React JavaScript 库(同样由 Facebook 开发),构建原生移动应用程序。其他用户包括:《探索》频道和 CBS 体育新闻网。
支持的操作系统:OS X
相关网站:https://facebook.github.io/react-native/
6、Ruby on Rails
Ruby on Rails是一个可以使你开发、部署、维护 web 应用程序变得简单的框架。这个 Web 开发框架在开发人员当中极其流行,它声称“为确保编程员满意和持续高效地工作进行了优化”。用户包括 Basecamp、推特、Shopify 和 GitHub 等公司。
支持的操作系统:Windows、Linux 和 OS X
相关网站:https://rubyonrails.org
七、中间件
1、JBoss
JBoss是一个基于J2EE的开放源代码的应用服务器。JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范,但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。JBoss中间件包括各种轻量级、对云计算友好的工具,同时结合、集成和自动化各个企业应用程序和系统。用户包括:橡树岭国家实验室、日产、思科、冠群科技、AMD 及其他公司。
网友评论
写评论