设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 开源资讯 查看内容

开源软件PK:Hadoop vs Apache 谁与争锋

2012-1-16 12:42| 发布者: 红黑魂| 查看: 17233| 评论: 1|原作者: 赵为民|来自: 中关村之家

摘要:   随着数据时代的来临,开源软件越来越被重视,尤其在Web应用服务器、应用程序架构和大数据处理方面更是应用广泛,其中Hadoop、Apache 、MYSQL等开源软件更是家喻户晓,在企业大型网络应用中承担重要作用。免费、 ...

  三、Nginx

  Nginx 是一个高性能的反向代理 服务器,也是一个IMAP/POP3/SMTP 代理服务器。 Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。

Ubuntu的十六个软件

Nginx

  优点:

  Nginx可以在大多数Unix like OS上编译运行,并有Windows移植版。目前 Nginx的1.0.9稳定版已经于2011年11月1日发布,开发版本已完成的为1.1.8,如果新建站点,建议使用最新稳定版作为生产版本,已有站点升级急迫性不高。 Nginx的源代码使用2-clause BSD-like license。

  Nginx是一个很牛的高性能Web和反向代理服务器,它具有很多非常优越的特性:

  在高连接并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000个并发连接数的响应,感谢Nginx为我们选择了epoll and kqueue作为开发模型。

  Nginx作为负载均衡服务器:Nginx 既可以在内部直接支持Rails和PHP程序对外进行服务,也可以支持作为 HTTP代理服务器对外进行服务。Nginx采用C进行编写,不论是系统资源开销还是CPU使用效率都比Perlbal要好很多。

  作为邮件代理服务器:Nginx同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last. fm 描述了成功并且美妙的使用经验。

  Nginx是一个安装非常的简单,配置文件非常简洁(还能够支持perl语法),Bugs非常少的服务器:Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级。

 

  四、Hadoop

  Hadoop一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个分布式文件系统简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的硬件上。而且它提供高传输率来访问应用程序的数据,适合那些有着超大数据集的应用程序。HDFS放宽了POSIX的要求这样可以流的形式访问文件系统中的数据。

Ubuntu的十六个软件

Hadoop

  Hadoop是一个能够对大量数据进行分布式处理的软件框架。但是 Hadoop 是以一种可靠、高效、可伸缩的方式进行处理的。Hadoop是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。Hadoop是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。Hadoop还是可伸缩的,能够处理 PB 级数据。此外,Hadoop依赖于社区服务器,因此它的成本比较低,任何人都可以使用。

  Hadoop带有用Java语言编写的框架,因此运行在Linux生产平台上是非常理想的。Hadoop上的应用程序也可以使用其他语言编写,比如 C++。

  五、Ruby on Rails

  Ruby on Rails是一个可以使你开发,部署,维护web应用程序变得简单的框架。

  当然了,所有的web框架都有同样的目标。是什么使得Rails如此不同呢?我们可以通过几个途径来回答这个问题。

Ubuntu的十六个软件

Ruby on Rails

  第一是看架构。在过去的时间里,许多开发者在严谨的web应用程序上使用 MVC 架构。他们发现MVC架构可以使他们的程序变得更清晰,在java中像Tapestry和 Struts这些框架都是基于MVC 。Rails也是一个MVC框架。当你使用Rails进行开发,应用程序的所有代码以一种标准方式互相作用。在开始开发之前,整个应用程序的骨架已经搭好的。

  回答这个问题的第二个是看编程语言。Rails程序是使用Ruby编写的,它是一门现代,面向对象的脚本语言。Ruby简洁,不难理解。它可以让你快速地用代码自然 , 清晰表达想法。让你的程序能很简单被编写并且在几个月后还能很容易读懂。

  Ruby on Rails是一个Web应用程序框架,是一个相对较新的Web应用程序框架,构建在Ruby语言之上。它被宣传为现有企业框架的一个替代,而它的目标,简而言之,就是让生活,至少是Web开发方面的生活,变得更轻松。

  J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是核心Java平台或Java 2平台的标准版,J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性能高可靠性以及可扩展性的应用的需求。

  Java 2平台有3个版本,它们是适用于小型设备和智能卡的Java 2平台Micro版、适用于桌面系统的Java 2平台标准版、适用于创建服务器应用程序和服务的Java 2平台企业版。

  Ruby on Rails和 J2EE堆栈的比较

  可以看到,Rails堆栈和构成普通的基于 J2EE的Web应用程序的组件之间的基本区别很小。两者都有用来执行应用程序代码的容器;都有帮助分离应用程序的模型、视图和控件的MVC框架;以及持久存储数据的机制。


酷毙
5

雷人

鲜花

鸡蛋

漂亮

刚表态过的朋友 (5 人)

  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部