`
liuqiang
  • 浏览: 161211 次
  • 性别: Icon_minigender_1
  • 来自: 华东
社区版块
存档分类
最新评论

我怎么就觉得rails适合做大型应用

    博客分类:
  • Ruby
阅读更多

    之前读了不少文章,说rails不大适合做大型的互联网应用或者企业应用,但通过实际的使用rails,越发的发现rails做大型应用是个不错的选择。 说rails不适合做大型应用无非瞄准了rails的2个软肋,一个是ruby的性能,一个是后期的可维护性。 

    先谈谈可维护性吧,可维护性最大的问题是需求的改变,简单的说,取决于项目结束后,客户要求你变更程度的大小与多寡,这更多的是项目管理的范畴,具体到语言的层面,其实意义不大,我们可以想想,一个后期维护的问题放到rails难解决,那么放到java、php……里面就简单了?真要比个优劣的话,我倒是觉得rails更胜一筹,rails本身就是一套良好实践的集合,你按它的规范做,会少走不少弯路,与其说rails是框架级代码的复用,不如说是良好设计和经验的复用。

    咱好好谈谈性能吧,由于rails是个全栈式MVC框架,各个组件之间的搭配都是经过优化的,而采用SSH,需要自行协调各个组件之间的协同工作,稍有不慎,肯定会带来性能上的问题,我想各位看客也知道那个意思,我这里就有个例子,一个用SSH开发的社区网站,速度极其的慢,采用ruby on rails 改版后,速度明显提升很多,当然这可能也和开发者的水平有关,我也懒的去研究为什么当初采用SSH时性能会出现瓶颈,仅仅这个例子,让我知道一个一般的程序员用rails开发出东西未见得比用SSH的东西性能要低。

    当然,上面的例子可能并不具有普遍性,所以说服力也不够。那么总所周知的是,做一个大型应用的杀手锏是“分”,当年的j2ee也是这种理念,尽可能的分,但遗憾的是j2ee分的效果并不太好,或许是过于复杂了,我所知道的java项目大都跑在一台服务器上。当然也是有很多大型java项目还是分布式的,那么既然大家都跑在多台廉价的服务器上,单纯的比单台服务器的速度其实意义并不大,在一个可伸缩的架构中,资源的消耗应该随负载线性上升,负载可由用户流量、数据量等测量。如果说性能衡量的是每一工作单元所需的资源消耗,可伸缩性则是衡量当工作单元的数量或尺寸增加时,资源消耗的变化情况。换句话说,可伸缩性是整个价格-性能曲线的形状,而不是曲线上某一点的取值。

    所以问题归到了架构上面来了,而对于目前或者未来的应用架构,最合理的方式是把一个大型应用拆成许多合理的单元,而内置了REST支持机制的rails将抢占了未来的先机,当然可能这种机制尚不完善,但它的方向我认为是正确的。

那么我对rails的"分"的方案有以下几种思路:

    1 在应用程序的之间水平切分,一个系统拆成各自独立的系统拼接而成,每个独立的系统的后台将做服务器级别的集群,举个例子,校内最近开发的爱听网就是用ruby on rails 开发的,它将是个独立的系统,会作为一个频道拼到现有校内的菜单上,这种方式不错,但相互过于独立,数据共享是个问题。

    2 在应用程序的内部水平切分,这种粒度要小一点,做相册的负责图片,做音乐的负责音乐,做博客的负责博客,用标准的负载均衡服务器来路由进入的流量。所有应用服务器都是均等的,而且任何服务器都不会维持事务性的状态,因此负载均衡可以选择自己的应用服务器。如果需要更多处理能力,只需要简单地增加新的应用服务器。貌似豆瓣是这种模式。

    3 针对具体资源的切分,这种方法是把所有的服务抽象成粒度更小的资源,分布在各个服务器上,在主服务器上通过REST调用展现出来,这样各个服务节点相互独立,不会因为某一节点造成性能上的瓶颈,当然我也不是随便说说,目前准备用这种方式构建一个社会化网络,就目前的感觉---良好。

    4 SOA,相关的功能部分应该合在一起,不相关的功能部分应该分割开来——不管你是否把它叫做SOA,功能分解还是工程秘诀。而且,不相关的功能之间耦合程度越松散,就越能灵活地独立伸缩其中的一部分。我对SOA理解不深,这里有一段访谈倒是蛮有说服力,

 

 

 

 

 

 

 

写道

Engine Yard公司的首席技术官Tom Mornini表示,单机百万线应用的时代已经结束,面向服务架构(SOA)是这一时代的终结者。该公司提供Ruby and Rails主机服务器。
  他在最近的采访中说“我认为使用大型程序的年代已经结束了”“有些程序看起来很大,但是随着时间的推移,它们将最终成为许多小程序的结合体。”
  通过为全球市场的业务提供灵活性,SOA的可组合性改变了应用开发比赛。在全球市场中,商业机会不是一成不变的。
  Mornini说“我实在看不出任何其他方式可以满足存取数据,改变流体的需求,以便在企业内外跟上时代的步伐。”“这就是为什么未来能解决所有问题的单机百万线应用在这一点上仅仅是个遗迹。”
  Mornini认为,这不再是SOA是传统应用开发选择的问题,而是除了SOA以外,我们没有其它的选择。
  他说“这些大型程序很难管理和维护,很难想像单机应用会成为未来发展的方向”。
  Engine Yard公司的首席技术官认为带有REST的Ruby on Rails是为SOA建立新一代的服务和应用的一种方法。与Java不同,Java是在SOA应用开发时代前开发的项目,他注意到,Ruby on Rails 和REST怀抱SOA为理念向世人提供了一个前所未有的方法。
  Mornini说“拥有一个服从该框架的牢固而又深厚的面向服务架构就是Rails的秘诀”该架构的开发商认为(它的SOA功能)是该平台的一大优势。
  他认为Ruby on Rails非常适合SOA开发。新发布的Rail 2.0令该框架更容易为SOA应用以及旧数据存取所接受。他承认,原有的Rails框架与旧数据存取关系并不是十分融洽。今年推出的新模型已经超过了前者。
  他说,例如,Rails组提供的代码增加了许多新的功能,通过以服务的形式将旧数据曝光,使得在SOA应用中访问旧数据变得更为简便。
  Engine Yard公司的首席技术官说 “由于遵循了售后服务书籍和网络视频记录的规程,Rails令开发商使用RESTful数据变得更为简单”。
  他说,“如果你遵循RESTful Rails的标准过程,在系统外用Rails编写了一个程序,就会自动得到该程序展示的一个建立在XML-over-HTTP基础之上的API。
  但是如果要使其运转,"继续使用 Rails"很重要。Mornini说这就是Rails遵循既定规程的妙招。

 

 

 

 

 

分享到:
评论
94 楼 gigix 2008-08-26  
robbin 写道
我看你脑子气糊涂了吧? 仔细看看你上面自己说过的话。你自己先用ruby没有这些企业应用可能需要的库来否定ruby,然后我告诉你其实ruby也是有这些库的,只不过你不知道而已。然后你自己就开始扯盖茨也不知道ruby(你敢确信盖茨不知道ruby?那IronRuby是怎么回事?),否认你没有说过ruby没有这些东西,最后又扯我要有本事,就自己用ruby开发工作流。我就纳闷了,我有本事也罢,没本事也罢,和用不用ruby开发工作流有什么逻辑关系吗?

直接承认他很有本事,Rails就是一坨屎
反正又不损失什么
你花个五块钱,让他一辈子以为花生是树上长的,多划算
何况还不花钱
93 楼 seemoon 2008-08-26  
ltian老兄,省点口水吧,看了你发的三个问题就知道你对web开发的理解力和水平了,我这不是故意贬损,继续说下去不是批判的问题了,而是你自己暴露自己的过程了。

保持一颗开放学习的心,人才会有进步。
92 楼 robbin 2008-08-26  
ltian 写道
robbin 写道
ltian 写道
gigix 写道
ltian 写道
您能说明用rails 开发的系统用10万行,而别的语言,比如java就要用100万行吗?大型系统靠的是通用框架和组件来缩短代码行数,提高系统的稳定性和易维护性,而不是靠语言本身吧?

不信就算了。我没啥必要非说服你不可。

咱们讨论道理,不是谁要说说服谁的问题。我的观点是,大型系统开发方面,通用框架和平台的作用远远超出语言本身的作用。比如没用工作流系统、没有图形开发库、没有应用建模框架、没有企业建模框架、没有权限资源管理框架,没有应用建模框架、没有消息框架那么开发大型企业应用是很困难的。大型企业应用可不单单是人机界面多的问题。用rail开发人机界面可能比JSF或者其他JAVA的表现层技术要快捷些。但是这不能说明开发大型企业应用就占优势。当然我也不反对rails能开发大型应用,关键是你的团队有没有很多成熟的框架,如果仅仅是依靠语言本身,我觉得远远不够。


工作流方面ruby是有的,但是目前比较简单,可能没有达到jBPM的完善程度;
图形开发库方面ruby的RMagic并不比Java2D,3D差呀,甚至性能更好;
应用建模框架是什么概念?你举个Java的开源例子给我听听看?
企业建模也不明白,麻烦你也举个开源的Java例子?
权限资源管理框架麻烦去看看看ruby版好吗?孤陋寡闻本不是错;
消息框架也麻烦你去看看ruby版,ruby的消息框架现在实在太多了;

哦,不会Ruby就是孤陋寡闻,问问比尔盖茨同志知道不知道ruby 。我说的这些都是我们自己针对企业应用开发的,和开源的有类似,也有些是自己抽象出来的。我举这些东西是说企业开发中,这些才是加快大规模应用开发效率,提高产品质量的核心东西,和语言本身无关。我有说过一句Ruby没有这系统的吗?有本事自己有用Ruby做一个全面工作流系统才叫厉害。


我看你脑子气糊涂了吧? 仔细看看你上面自己说过的话。你自己先用ruby没有这些企业应用可能需要的库来否定ruby,然后我告诉你其实ruby也是有这些库的,只不过你不知道而已。然后你自己就开始扯盖茨也不知道ruby(你敢确信盖茨不知道ruby?那IronRuby是怎么回事?),否认你没有说过ruby没有这些东西,最后又扯我要有本事,就自己用ruby开发工作流。我就纳闷了,我有本事也罢,没本事也罢,和用不用ruby开发工作流有什么逻辑关系吗?
91 楼 hideto 2008-08-26  
http://highscalability.com/friends-sale-architecture-300-million-page-view-month-facebook-ror-app
90 楼 gigix 2008-08-26  
robbin 写道
另外除了ruby VM的问题,Rails的事务处理模式过于简单,也是一个我存疑的地方,不知道用Rails做在线电子支付会不会有问题。

没明白。什么问题?
89 楼 7thbyte 2008-08-26  
mycybyb 写道
gigix 写道
引用
用Ruby能比用Java减少30%代码量这样结果不知道谁统计的?同样的功能?指哪些方面的功能呢?不要专门指Ruby擅长的或者Ruby自身封装的 API库里那部分功能?不知道Ruby做一个组态图形库的代码量如何?用Ruby写数学算法的代码会比java减少出30%吗? 谢谢。

sigh
其实这个事情我都说过好多遍,说得都疲了…好吧再说一遍
companies.collect(&:departments).flatten.select{|dep|dep.location=="Shanghai"}.collect(&:employees).flatten.uniq.size

拿Java写一个来看看?
有些东西啊,既然别人这么言之凿凿的说,那肯定是有一定道理的,别人肯定是想过的
您这上来就“我们如何如何”,行,您什么都知道了,我也没啥必要非得说服谁不可,我又不损失什么


用java把那几个函数封装一下就可以了。
rails不就是把这些功能内置了吗。
还是那句话,java是语言,rails是框架,不具有可比性。用java也可以做个rails出来。


怎么总有人以为JAVA这种OO得不彻底的静态语言通过“封装”就能实现Ruby的特性?- -

java里面数组和int都不是OO的东西

而ruby里面是

怎么封装也不可能封装出
1.times
2.odd?
这种东西好不好。。

发现根本就没理解代码、语言、框架关系的人浩如烟海。。
88 楼 robbin 2008-08-26  
gigix 写道
robbin 写道
你们用Rails做企业应用,部署的时候用的是JRuby,还是RubyWorks那个套件?用RubyWorks的时候,monit配置不配置?

RubyWorks,用Monit的
我们最近的一个项目用Rackspace的虚拟主机,环境都配好的


通过我长期的运营经验来看,目前Ruby VM的堆内存管理其烂无比。简单的来说,就是GC之后,尽管对象已经完全回收,但是物理内存释放不够充分,有泄漏的现象。我通过pmap来dump ruby进程物理内存地址映射表以后,经过分析,基本上可以确定是ruby的内存堆总是在不停的扩张,GC之后回收不干净。而我对比观察Java VM,其Full GC之后,物理内存释放的非常干净。所以用Ruby做服务器长期的跑,就会发现Ruby进程总是在没有理由的缓慢泄漏内存,内存堆缓慢增长,貌似没有上限。

总之和JavaVM的分代GC算法,以及对堆的有效管理对比来看,Ruby VM的堆内存管理实在是原始的不能再原始了。这是我现在对Ruby最大的抱怨,而且看起来在未来的一段时间之内不会有特别好的改善。

我看现在很多流行的Rails网站都是用monit去监控mongrel实例,一旦发现内存使用超过限额就杀掉重起,确实是有点简单粗暴了,但似乎无法杜绝这个问题。我现在没有用monit,而是自己写shell脚本来监控,每天大概能出现两三次这种需要杀掉重起的情况,对比每天要处理将近100万动态请求来说,可靠性还是达到了99.999%,五个9的水平了,很满意了。

另外除了ruby VM的问题,Rails的事务处理模式过于简单,也是一个我存疑的地方,不知道用Rails做在线电子支付会不会有问题。
87 楼 gigix 2008-08-26  
robbin 写道
你们用Rails做企业应用,部署的时候用的是JRuby,还是RubyWorks那个套件?用RubyWorks的时候,monit配置不配置?

RubyWorks,用Monit的
我们最近的一个项目用Rackspace的虚拟主机,环境都配好的
86 楼 seemoon 2008-08-26  
neodoxy 写道
说说ROR开发的弱点:
Ruby目前漏洞太多,还未成熟
滥用plugins,gems造成的安全性问题
应用服务器的稳定性问题

其他都可以归结为 设计问题,能力问题,信仰问题


Ruby目前漏洞太多,还未成熟?? for example?
滥用plugins,gems造成的安全性问题?? 这是应用的问题,看你会不会用了。别忘了说gem的功劳,现在java的库管理那一个差阿,所以出了个maven,但是maven很可惜也比较复杂,在我看来
应用服务器的稳定性问题??javaeye目前看来还比较稳定,否则可能就看不到你这个贴或者我这个回帖了,开个玩笑
其他都可以归结为 设计问题,能力问题,信仰问题??这些最好不讨论了,因为很虚,不如用事实和代码说话
85 楼 robbin 2008-08-26  
gigix 写道
ltian 写道
这里面的功能都以数据库记录增删该为主,简单界面工作量相对大,做简单WEB界面是Railde强项。
如果我让你做企业应用界面恐怕你就累死了,再让你用Rail实现电力、通信、银行的业务逻辑,恐怕也没那么容易了。
这个系统无法代表大型企业应用,只能代表论坛类网站的开发。

瞧瞧,又是这种调调
“我们的东西很牛x的,你这些小花招在我们这里根本行不通”
“我们情况最特殊了,你们那些东西太理想化,不适合我们的情况”
听得我都烦
告诉你两个事实,第一JavaEye的功能显然不是数据库记录增删改为主,第二企业应用我们用Rails做了好多了
信不信随便啦


你们用Rails做企业应用,部署的时候用的是JRuby,还是RubyWorks那个套件?用RubyWorks的时候,monit配置不配置?
84 楼 neodoxy 2008-08-26  
无知产生恐惧,人天生会对陌生的事物排斥,在未了解之前就否定掉了
当然也不排除人不拥有认知事物所要具备的技能
83 楼 robbin 2008-08-26  
ltian 写道
gigix 写道
引用
用Ruby能比用Java减少30%代码量这样结果不知道谁统计的?同样的功能?指哪些方面的功能呢?不要专门指Ruby擅长的或者Ruby自身封装的 API库里那部分功能?不知道Ruby做一个组态图形库的代码量如何?用Ruby写数学算法的代码会比java减少出30%吗? 谢谢。

sigh
其实这个事情我都说过好多遍,说得都疲了…好吧再说一遍
companies.collect(&:departments).flatten.select{|dep|dep.location=="Shanghai"}.collect(&:employees).flatten.uniq.size

拿Java写一个来看看?
有些东西啊,既然别人这么言之凿凿的说,那肯定是有一定道理的,别人肯定是想过的
您这上来就“我们如何如何”,行,您什么都知道了,我也没啥必要非得说服谁不可,我又不损失什么


这样的代码我是反对的。级联太多,调试不好调。通过这样的代码来减少代码行,却牺牲了程序的可读性,我认为不可取。你的心情我能理解,但是这一行代码说不明不了问题。



有点搞笑呀,这行ruby代码的可读性是非常好的,不需要你懂ruby的API,只要你对这几个英文单词的意思比较熟悉,而且对回调有那么点概念,你不觉得这行代码就像读英文句子那么通顺吗?

这行代码就是说: 把一堆公司的部门统统展开,选择那些位于“上海”的部门,然后把这些部门的员工放在一起,去掉重复人员,统计这些员工总共有多少个人。

不要告诉我连这个意思你都看不懂。
82 楼 seemoon 2008-08-26  
mycybyb 写道
Rails在web表现层有什么好的解决方案吗?


rails的表现层好的解决方案有一点体现在从.rhtml=>.html.erb这个转变上,除了解析引擎的进步之外,里边将不同的文档模板加以区分这种思想也是非常之善的,比如还可以有.xml.erb,.pdf.erb,呵呵。

rails的表现层有partial,有<%=yieldx%>,足以应付web2.0时代的灵活多边需求

rails的helper对于表现层是一个很好的辅助,尽管也有很多人诟病helper泛滥,但在java中要写相关的Util类也是很烦的事情,不如rails框架给你自动织入helper方法方便,而且页面的调用都是面向方法,而不是对象!

rails的表现层优势点还在于ruby语言和类库本身,对集合的便利操作令人击节叫好,如collect,each_with_index等,java虽然有jstl或者el,但是相比起来太笨拙了。

rails的扩展也是对web表现层的一种支持,比如对时间,数据的格式化

rails的action view写得也很不错,如表单元素生成的helper,跟页面服务脚本一样,同样是面向方法,这跟struts、jsf这些jee展示技术的标签技术<f:xx/>也简化了好多,写页面时的一致性和简洁性非常高。

rails的plugin机制让你很方便的创建可重用组件,当然plugin不仅仅可以做展示层的插件了,比jee的taglib方案要好



81 楼 7thbyte 2008-08-26  
愿意实践的就去实践(比如说我)
不愿意实践的看看热闹就行了,看完了各回各家吧

实践是检验真理的唯一标准,产品决定命运嘛。

BTW:因为业余时间多人开发,俺这里大家时间不统一,所以最近尝试把一个WEB站点的功能模块拆分成很多个Rails工程,使用单点登录进行用户认证,依靠REST资源访问架构实现数据访问,依靠Thrift实现方法调用。正在进行共用memcache资源的实践。

弄了个不成熟的雏形出来,还在完善。
80 楼 robbin 2008-08-26  
ltian 写道
gigix 写道
ltian 写道
您能说明用rails 开发的系统用10万行,而别的语言,比如java就要用100万行吗?大型系统靠的是通用框架和组件来缩短代码行数,提高系统的稳定性和易维护性,而不是靠语言本身吧?

不信就算了。我没啥必要非说服你不可。

咱们讨论道理,不是谁要说说服谁的问题。我的观点是,大型系统开发方面,通用框架和平台的作用远远超出语言本身的作用。比如没用工作流系统、没有图形开发库、没有应用建模框架、没有企业建模框架、没有权限资源管理框架,没有应用建模框架、没有消息框架那么开发大型企业应用是很困难的。大型企业应用可不单单是人机界面多的问题。用rail开发人机界面可能比JSF或者其他JAVA的表现层技术要快捷些。但是这不能说明开发大型企业应用就占优势。当然我也不反对rails能开发大型应用,关键是你的团队有没有很多成熟的框架,如果仅仅是依靠语言本身,我觉得远远不够。


工作流方面ruby是有的,但是目前比较简单,可能没有达到jBPM的完善程度;
图形开发库方面ruby的RMagic并不比Java2D,3D差呀,甚至性能更好;
应用建模框架是什么概念?你举个Java的开源例子给我听听看?
企业建模也不明白,麻烦你也举个开源的Java例子?
权限资源管理框架麻烦去看看看ruby版好吗?孤陋寡闻本不是错;
消息框架也麻烦你去看看ruby版,ruby的消息框架现在实在太多了;




79 楼 robbin 2008-08-26  
mycybyb 写道
gigix 写道
引用
用Ruby能比用Java减少30%代码量这样结果不知道谁统计的?同样的功能?指哪些方面的功能呢?不要专门指Ruby擅长的或者Ruby自身封装的 API库里那部分功能?不知道Ruby做一个组态图形库的代码量如何?用Ruby写数学算法的代码会比java减少出30%吗? 谢谢。

sigh
其实这个事情我都说过好多遍,说得都疲了…好吧再说一遍
companies.collect(&:departments).flatten.select{|dep|dep.location=="Shanghai"}.collect(&:employees).flatten.uniq.size

拿Java写一个来看看?
有些东西啊,既然别人这么言之凿凿的说,那肯定是有一定道理的,别人肯定是想过的
您这上来就“我们如何如何”,行,您什么都知道了,我也没啥必要非得说服谁不可,我又不损失什么


用java把那几个函数封装一下就可以了。
rails不就是把这些功能内置了吗。
还是那句话,java是语言,rails是框架,不具有可比性。用java也可以做个rails出来。


这话你还真说错了! 如果你用过Hibernate的话,上面这段ruby代码的所有方法调用,Hibernate都已经提供了,但是你用Hibernate去写写的话,至少要20行以上的Java代码。
78 楼 neodoxy 2008-08-26  
说说ROR开发的弱点:
Ruby目前漏洞太多,还未成熟
滥用plugins,gems造成的安全性问题
应用服务器的稳定性问题

其他都可以归结为 设计问题,能力问题,信仰问题
77 楼 liuqiang 2008-08-26  
<div class='quote_title'>seemoon 写道</div>
<div class='quote_div'>看见大家伙吵啊,砖头啊,本不想掺和,但是还是没忍住说两句,谁叫这种题目太煽情呢对把?呵呵 <br/>1. 在语言和类库封装上面,ruby的表现确实要优于java <br/>2. 代码量少确实可以带来好的维护性 <br/>3. rails框架写得确实好,起码你不用像jee一样要考虑集成这个那个,否则sun也不会主导jruby和grails这些技术。rails写得好在于核心思想上,比如建立在ruby语言之上,convention为王,天生的REST支持,等等 <br/>4. 上面尽说好了,该说点不好的,在企业应用上面有很多复杂的东西,比如异步消息了,业务流程了,报表了,数据挖掘了,比之于互联网应用要复杂一些,尽管这些ruby社区都有相应的第三方库,但是在应用当中需要稍微花些功夫来解决一些边角的东西,所以说ruby and rails在企业应用上面还有些路要走 <br/><br/>综合而言,r and r需要时间,这个新锐跑得很快,就像今年的罗伯斯跨栏一样,璀璨夺目,java有些臃肿和老迈了,不过java还在发展当中,包括吸收类似于r and r的优秀思想和技术。 <br/><br/>对于开发人员来说,当然是技多不压身了,因为j和r都在作web,在web上面都相当不错,能横跨两个语言和平台是一件很惬意的事情,起码对我来说是这样的。 <br/><br/>至于j和r之争,有人在,就有江湖在,有江湖在就有刀剑在,打打,闹闹,争争山头,夺夺地位,热闹乎,开心乎,切磋乎,进步乎。呵呵,很爽! <br/><br/></div>
<p> </p>
<p> 恩,我得改下题目,rails适合rails程序员做它能做的应用</p>
<p>其实我也是一番好意,想从架构的角度谈谈下rails其实做大型应用并没有想象的那么糟糕,谈谈思路,我也没有干吼:rails就是适合做大型应用!</p>
<p>另外我也没有否认java适合做大型企业级应用,你做你的我做我的,世界多一个选择难道不好吗?</p>
<p>最大的希望是有相关经验的人来谈谈经验,并不是想和java争个你死我活</p>
76 楼 mycybyb 2008-08-26  
Rails在web表现层有什么好的解决方案吗?
75 楼 gigix 2008-08-26  
Quake Wang 写道
ltian 写道

这是企业开发里面对界面的最常见和普通的要求。在Javaeye上一个没见,所以我说JAVA Eye网站的界面要求有些简单。JavaEye里面确实有些功能做的很好,我也没有小瞧这个网站。只是说这里面的技术运用的成功不能代表它能运用到企业开发领域。

我在用Rails之前,用Java写了6年的企业应用,根据以往的项目经验,Rails的技术完全可以用到企业应用中,而且我经历过所谓的企业应用中,大部分的技术含量比做互联网应用要低很多,你前面谈的需求完全是界面的东西,和后台用什么框架是无关的。

sigh
老王啊,我推荐你一个blog看看呗
http://yinluotianse.blogbus.com/logs/27906246.html

相关推荐

    使用Aptana+Rails开发Rails Web应用(中文)

    在开发Web应用时,Ruby on Rails(简称Rails)框架因其高效、简洁的代码风格和强大的社区支持而备受青睐。Aptana是一款强大的集成开发环境(IDE),尤其适用于Rails项目的开发,它提供了丰富的特性来提升开发效率。...

    Web开发敏捷之道--应用Rails进行敏捷Web开发 之 Depot代码。

    综上所述,这个压缩包提供的Depot项目是一个典型的Rails应用实例,适合初学者了解Rails框架的基本结构和敏捷开发流程。通过研究源码,开发者可以学习到如何组织代码、设置数据库、编写控制器逻辑、创建视图模板以及...

    使用Rails开发Facebook平台应用

    《使用Rails开发Facebook平台应用》是一本全面而深入的指南,不仅适用于希望学习如何使用Rails开发Facebook应用的技术人员,也适合那些想要了解如何在市场上取得成功的创业者。通过本书的学习,读者不仅可以掌握必要...

    Ruby+on+Rails快速Web应用开发实战.pdf

    Ruby on Rails(简称RoR或Rails)是一种开源的网络应用框架,用Ruby语言编写。它被设计用来轻松地实现MVC(模型-视图-控制器)设计模式,从而使开发人员能够快速和有条理地创建数据驱动的应用程序。接下来,我将详细...

    rails_apps_composer, 一个 gem,为 Rails 启动应用程序创建 Rails 应用程序模板.zip

    rails_apps_composer, 一个 gem,为 Rails 启动应用程序创建 Rails 应用程序模板 Rails 应用编辑器 Rails 应用程序编辑器 gem 安装一个 命令行 工具来从"食谱"的Collection 组装 Rails 应用程序。"你可以使用 rails_...

    component base rails applications

    本书《Component-Based Rails Applications》主要介绍了如何使用Rails引擎(Rails Engine)进行基于组件的Rails应用开发,以及如何对应用程序的大型模块进行拆分和模块化。以下是书中一些核心知识点的详细说明: 1....

    应用Rails进行敏捷Web开发中文第三版

    《应用Rails进行敏捷Web开发》中文第三版是针对Ruby on Rails框架的一本详尽指南,主要聚焦于Rails 2.2.2版本。Ruby on Rails(简称Rails)是一款基于Ruby编程语言的开源Web应用程序框架,它遵循“Don't Repeat ...

    Ruby-GoOnRails使用Rails生成器来生成一个Golang应用

    **Ruby-GoOnRails:利用Rails生成器构建Golang应用** Ruby on Rails(简称Rails)是一种流行的Web开发框架,以其“约定优于配置”的理念和高效的开发速度受到开发者喜爱。而Go(Golang)则是一种静态类型、编译型的...

    Ruby on Rails:部署Rails应用至Heroku.docx

    Ruby on Rails:部署Rails应用至Heroku.docx

    Web开发敏捷之道-应用Rails进行敏捷Web开发 pdf

    《Web开发敏捷之道——应用Rails进行敏捷Web开发》是一本深度探讨如何利用Ruby on Rails框架进行高效、敏捷的Web应用程序开发的专业书籍。该书涵盖了从初学者到高级开发者所需的各种知识,旨在帮助读者掌握敏捷开发...

    rails2-sample

    了解如何在真实世界中运行和管理Rails应用,对于确保应用的稳定性和安全性具有重要意义。 综上所述,《Simply Rails2》不仅为初学者提供了全面的Ruby on Rails入门指南,也为进阶开发者提供了深入的技术细节和实践...

    Rails 101 入门电子书

    《Rails 101 入门电子书》是一本非常适合初学者直接入门的书籍,它由xdite编写并出版于2014年6月10日。本书主要针对的是希望学习Ruby on Rails框架的读者,特别是那些想要从零开始掌握这项技术的新手。 #### 二、...

    Ruby on Rails所构建的应用程序基本目录结构总结

    当使用rails new appname生成Rails应用后,我们可以通过tree来查看Rails应用的目录结构: 目录结构 应用程序目录下会有app、config、db、doc、lib、log、public、script、test、tmp和vendor等11个目录和config.ru、...

    rails应用--导航栏实例工程

    在本项目"rails应用--导航栏实例工程"中,我们将探讨如何在Ruby on Rails框架下构建一个实用的导航栏。Rails是一个流行的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,使得开发过程更加高效且结构...

    Rails项目源代码

    Ruby on Rails,通常简称为Rails,是一个基于Ruby编程语言的开源Web应用框架,遵循MVC(Model-View-Controller)架构模式。这个“Rails项目源代码”是一个使用Rails构建的图片分享网站的完整源代码,它揭示了如何...

    关于rails 3.1 cucumber-rails 1.2.0

    Rails 3.1 和 Cucumber-Rails 1.2.0 是两个在Web开发领域非常重要的工具,尤其对于Ruby on Rails框架的测试和自动化流程。本文将深入探讨这两个组件,以及它们如何协同工作来增强软件开发的效率和质量。 首先,...

    Ruby on Rails安装指南(Ruby 1.8.6+Rails 2.0.2)

    最后,创建测试的 Rails 应用程序,并启动 Mongrel 服务器。 知识点1:Ruby 安装 * 下载 Ruby One-Click Installer 版本 * 安装 Ruby * 检查 Ruby 版本 知识点2:Rails 安装 * 下载 Rails 2.0.2 版本 * 安装 ...

Global site tag (gtag.js) - Google Analytics