ruby-on-rails - rails是什么 - ruby on rails知乎




Ruby On Rails是否为企业准备好了? (14)

有人在那里使用RoR进行大规模的关键业务应用程序吗?

是否还有其他基于人们用于这些类型的应用程序的动态语言的轻量级Web框架?

如果你不使用这些类型的应用程序框架,什么阻止你? 这仅仅是与任何大型IT组织有关的惯性吗? 这些框架的速度和稳定性问题是否足以抵消开发周期改进的问题?


我认为37Signals家伙已经使用Ruby on Rails构建了他们的所有应用程序

我可以想象,他们毕竟是发明它的人。

List Apart使用RoR,但不是企业。


IBM,Oracle,Sun和JPMorgan Chase只是使用Ruby on Rails的少数几家公司。 它可能没有比这更多的企业。


YellowPages.comPenny Arcade是我听说过的最大的头脑。 当然,很多企业正在将它用于内部应用程序。 就扩展而言,无论您的语言/框架如何,自由缓存都是秘密。


为了考虑Ruby on Rails是否为企业做好了准备,你必须考虑“企业”这个词的含义。 根据我的经验,企业意味着“安全”。 寻找企业解决方案的公司通常会选择大型供应商支持的技术堆栈。 通过这种方式,他们知道他们可以获得支持,并可能通过咨询来换取大笔资金。 这是整个“没有人因为购买IBM而被解雇”的方法。

另一个要考虑的因素是无处不在。 毫无疑问,现在Ruby仍然被认为是一种有些异乎寻常的语言,熟练的Ruby程序员的可用性反映了这一点。 从技术上讲,Ruby比Java或C#更复杂,在OO纯度方面更接近Smalltalk,在元编程设施方面更接近LISP。 可以这么说,公司会发现,比Ruby程序员更容易从实体店获得Java或.NET程序员的低费率。 这不是为了侮辱Java或.NET程序员,而是反映了许多雇主仍然认为软件开发是最便宜的竞标者所要做的事情,而不是应该做的事情。 Java和.NET程序员现在几乎是一种商品,所以可以提供更低的成本。

从技术上讲,Ruby on Rails的规模可以与Java,.NET或PHP等一样好。相同的基本原则适用于衡量瓶颈的位置,调整SQL查询,最小化I / O,如果适当的话可能使数据库模式非规范化,明智地使用缓存等。如果您确实需要构建下一个eBay或亚马逊,那么您应该手动滚动并手动调整自己的解决方案,就像eBay和亚马逊已经完成的那样。 J2EE在遗留集成方面具有优势,但这不是Rails针对任何方面进行了优化的用例 - Rails完全是关于构建新的CRUD应用程序。

毫无疑问,就目前而言,Ruby是表现较慢的语言之一; 在这方面正在进行大量的投资,所以预计在未来几年情况会有所改善,就像它自Java首次推出以来一样。 在Ruby VM和MRI的替代品(Matz Ruby Interpreter)领域中有很多有趣的发展。 就我个人而言,我认为JRuby是一个值得关注的人。 它由Sun支持(请参见图),因为它是Ruby的Java实现,所以它是一种整洁的特洛伊木马,可以通过其现有的JVM基础架构将Ruby引入您的企业。

我不认为Rails对于企业来说还是那样,我希望它永远不会存在。 我并不是特别想看到我最喜欢的框架陷入了一些平庸或混乱的多供应商选择之中,这在J2EE世界中对我来说是显而易见的。 令人高兴的是,DHH似乎认定Rails应该继续是嘲讽自己痒的自以为是的软件,而不是试图成为所有公司的所有东西。


我一定会读这个Ruby On Rails的案例研究

在本文中,我将引导您了解如何使用Ruby on Rails构建网站。 您将看到我们正在使用的核心功能,以及我们每天所依赖的主要插件。 我们的大部分技术并非真正打破尘嚣,但我希望能在日常运作中让您一窥。 我的目标是为您提供关于团队如何工作的信息,我们在生产环境中信任的技术,我们使用的工具以及对我们最重要的Rails框架。 我会链接到一个资源,而不是在任何单一领域详细介绍,但如果您想了解更多关于它的任何部分,请发表评论。


我不知道我是否会认为它是企业......但我认为它说很多twitter和hulu都是建立在rails上。


我在企业环境中使用rails,它工作得很好。 你只需要塑造你的应用程序在环境中工作。 在我的情况下,我们是Java家,所以jRuby是选择的部署方法。

我也停止使用rails来渲染实际页面,但将其用于模块,工具以及链接到工具的快捷和肮脏的服务。 我们的java服务没有后端工具与他们交互。

我们的网站有数百页(可能是一千页),因此导轨可能会成为替代该体系结构的可选项目。 另一方面,如果我将rails整合到Java网站中,那么我可以解决很多java端最困难的问题。

您的应用程序架构非常关键,如果您没有将应用程序设计得很好,那么无论您选择何种框架/语言,都会遇到问题。

我确实为几个页面构建了一个rails应用程序,每月的点击量达到数十万次。 Rails做得很好,但大部分内容都被缓存了。 我们有一个例子,雅虎有一个与我们联系的头版故事。 该页面有一些非缓存的rails内容,所以巨大的流量导致了rails应用的下载,但这部分是我的错误,因为没有优化更好。


我很惊讶大多数答复都是积极的。 我是Ruby和Rails的忠实粉丝,并且同意我所说的一切,但我认为在社区中存在一个普遍的假设:“Rails尚未准备好迎接黄金时段。” (准予社区的信息通常比我想象的这个网站的用户要少)

我认为从技术角度来看,其他人提出的例子表明,事实上,您可以从Java或.Net堆栈中获得Rails的正常运行时间和性能。 问题是,你不能在30美元/小时的程序员的Rails中构建这些高性能,可靠的应用程序。 Ruby和其他动态语言似乎能够让优秀的程序员变得非常高效和高效,但同时他们也会瘫痪一般的程序员。 考虑到绝大多数大型IT商店选择使用最便宜的代码猴,他们可以发现我认为这将是一个非常痛苦的过渡,因为他们试图将Rails作为Java或.Net的替代品。


我是一名Web开发人员,我已经为各种公司(从Intranet到中等规模的网站)构建了一些Ruby on Rails网站,但我没有将它用于真正的大规模应用程序。

人们总是指出它速度很慢,不会扩展,很难部署。 “可扩展性问题”实际上不再是一个。 它仍然比其他大多数框架慢一些,但我希望rails 3能够解决这个问题。 感谢Capistrano和mod_rails并不是很难部署。

大型项目中使用rails可以看到的真正问题:

  • 没有很多人知道Rails。 如果你有一个PHP应用程序,你可以肯定有66%的Web开发人员能够维护它。 与轨道不同的交易。
  • 它还是比较慢,如果速度很关键,这可能是一个问题
  • 它仍然需要更多的电子商务组件等。 它到达那里,特别是自shopify以来,但它并没有像Java那样准备好。

除此之外,我认为Rails已经准备就绪。

通常这只是为项目找到合适的技术,有时候可能是轨道问题。 每种语言/框架都有缺点,所以在某些情况下,Rails不会是最明智的选择,但在其他情况下,它会做的恰到好处。

另外,只需等待Rails 3 ,它会很棒:)


我的一个好朋友刚刚在RecycleBank工作,他们使用Rails作为整个Intranet系统。 我认为Rails对企业来说绝对是准备好的,尽管这不是最令人质疑的。 大多数人质疑,由于内存需求,是否可以处理大量的流量。 这还有待观察,但我认为该框架完全有能力处理企业应用程序。


我还没有卖。 Twitter已经发生过大规模停电事件( 一集3天 !)。 到目前为止,它被归咎于缩小RoR的困难: 在这里阅读

/ MP


是的,我们有几个大客户使用基于Rails的(内联网和云)应用程序。 稳定性令人惊叹。 例如,有两个人想到流量和复杂度最高的应用程序:我们的应用程序中的一个应用程序已经生产了2.5年,0个问题,另外6个月,还有0个问题。


目前,我们使用Rails为每月拥有超过500万个独特用户的网站取得巨大成功,因此,如果enterprise = scale,那么是的。


这是我对此的看法。 我的公司(拥有120,000名员工)拥有主要用于内部IT的Java / J2EE堆栈。 他们还使用Sharepoint进行文档/知识管理以及Oracle应用程序的工作流程等。在过去的两年中,我领导一小组Ruby on Rails / Python-Django / PHP爱好者积极探讨在企业内采用这些框架。 通常我们碰到的(通常是无效的)论点

  1. 它不会缩放
  2. 这对企业来说不够安全

但是,我们设法推出了一些应用程序(Wordpress用于博客,雅虎的内置社交问答应用程序和基于Digg风格的基于创意/创新管理的应用程序),而且事情在非常快的时间内发生了真正的变化。 Rails / Django及其同类软件实际上可能对某些类别的企业应用程序更好,尤其是在知识管理,工作流程等方面的简单轻量级应用程序。





enterprise