`
lgx522
  • 浏览: 125836 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

RoR企业应用实践之二:Ajax与维护

    博客分类:
  • Ruby
阅读更多
前些天写了“RoR企业应用实践之一:移植物资管理系统”(http://lgx522.iteye.com/blog/144597),当时还有些缺漏,最近维护中又有些心得,今日有空便补上吧。

1、把系统中界面要求高的地方Ajax化,取得了比较好的效果。笔者开初并没有Ajax开发的经验,便参照“Agile Rails”的“Web2.0”一章进行改造。而这项工作远比笔者想像的容易,很快便完成了内部系统最常用的拼音首码输入,无刷新添加、更新、删除数据行等功能。由此体会到在RoR环境下Ajax开发的便捷。虽然rails自带的Ajax库不多,也不够炫,但非常实用,足以解决大部分B/S界面问题。而且改造的过程中,原先未用Ajax时的代码改动很小,足以表明rails框架设计的合理性。

2、系统上线后,效果相当理想。于是又有提出不少新的要求。如在线申请、审核、签收,多级库房、统计报表等等。于是笔者又对系统进行更新维护。好在系统设计之初,一直严格遵循范式和OOP,数据冗余度极少、代码冗余也很少,且rails的目录结构非常合理,故进行系统功能扩充、改造进行得相当顺利。困难之处在于要对业务的逻辑关系建模得相当到位,之后便可享受rail的DSL带来快乐了。

3、由于笔者对Linux和lighttpd-fcgi不熟悉,故采用俗气的Windows+Apache+Mongrel进行布署。好在系统并发压力较小,架了台普通PC台式机(CPU 2.4G,内存512M),连同MySQL一起跑。实践表明相当稳定,扔上去两个多月都没问题。这里需要说明的是,笔者曾经做过一点简单的压力测试,在50个并发的条件下,能够达到20左右的rps,足以满足企业内部这类中小系统的需求。今后有时间将尝试及时响应、并发要求高的系统,如门诊系统。届时用正规的高性能部署方式,看raisl是不是挺得住。

结论:
1、RoR环境下使用Ajax相当容易;
2、RoR具有良好的维护性,可以满足企业内部业务变动与扩展所带来的需求;
3、RoR具有一定的性能和稳定性,可以满足普通并发与响应速度的要求。

闲话:
近一年RoR和PHP之后,站在书柜前看到那一堆曾经奋战的Java书和另一堆仅翻过数本的.NET书,真是相当的痛心。唉,谁叫咱爱上这一行呢?

实在话:
不是人家不好,而是咱基本上用不着。
分享到:
评论
11 楼 yapi 2008-03-07  
rjs+prototype+scriptaculous
10 楼 carlosbdw 2008-02-04  
直接用prototype也太恐怖了吧
9 楼 caryl 2008-02-01  
ext2可以用json跟rails交互,还是挺方便的。
不过对ext2的体积和效率小有顾虑。
8 楼 lgx522 2008-02-01  
carlosbdw 写道
rails上如何使用ext2呢?


不知道,只用到自带的prototype等,有经验的同道可以跟帖谈一谈用ext2。
7 楼 lgx522 2008-02-01  
cquaker 写道
能不能说说拼音首码输入的实现,用户表里是多一列拼音首字母字段,还是用一虚拟字段。
稍微具体点


是用一列拼音首字母段。
View这层用observe_field
6 楼 carlosbdw 2008-02-01  
rails上如何使用ext2呢?
5 楼 cquaker 2008-02-01  
能不能说说拼音首码输入的实现,用户表里是多一列拼音首字母字段,还是用一虚拟字段。
稍微具体点
4 楼 lgx522 2008-01-31  
Sorry,由于日常工作中所需要的报表都是普通表格,所以用<table>加css就可搞定。

那些花哨的没有经验。
3 楼 oldrev 2008-01-31  
楼主能不能介绍一下Rails 的报表如何处理,是不是用的 Ruport?
2 楼 lgx522 2008-01-31  
chenjinlai 写道
Windows+Apache+Mongrel 出现mogrel进程堵塞你咋处理


session是存储在mysql中的,所以mongrel进程堵塞时就kill掉重启。
1 楼 chenjinlai 2008-01-30  
Windows+Apache+Mongrel 出现mogrel进程堵塞你咋处理

相关推荐

    Ruby.on.Rails.Web.Mashup.Projects

    - **部署与维护**:将应用程序部署到生产环境,并定期进行维护和更新。 #### 结论 《Ruby on Rails Web Mashup Projects》这本书不仅为开发者提供了关于构建Web Mashup 的全面指南,还涵盖了相关的技术和最佳实践。...

    Ruby+on+Rails实践

    Ruby on Rails,简称RoR,是一款基于Ruby语言的开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在简化Web应用开发,提高开发效率,并且强调“约定优于配置”的原则。RoR的出现极大地推动了...

    ruby_on_rails_learning:我的RoR笔记本

    Ruby on Rails,简称RoR,是由David Heinemeier Hansson基于Ruby语言开发的一款开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和可读性,使得开发者能够更快速地构建功能丰富的web...

    架构创新与演进(解决方案专场)——FreeWheel在微服务架构下的前端改造实践 共39页.pdf

    ### 架构创新与演进:FreeWheel在微服务架构下的前端改造实践 #### 一、FreeWheel背景介绍 FreeWheel是一家专注于视频广告管理及投放技术的企业,为媒体出版商提供全面的技术支持和服务。随着业务的不断扩展和技术...

    Build.Your.Own.Ruby.on.Rails.Web.Applications.Feb.2007.pdf

    - **监控与维护**:介绍如何监控应用状态,以及应对故障和维护需求。 本书不仅提供了丰富的理论知识,还包含了大量实践示例和代码片段,旨在帮助读者掌握Ruby on Rails框架的核心技能,并能够独立构建功能完备的Web...

    ThinkPHP v1.0.0 开发人员指南

    - **示例二:Blog 应用**:构建一个完整的博客系统,演示如何使用 ThinkPHP 构建复杂的应用程序。 ### 6. 文档与支持 - **文档**:官方文档提供了详尽的开发指南和最佳实践,包括类库和函数库的介绍、模板指南等。...

    ruby on rails 101

    ### Ruby on Rails 101:深入理解与实践 #### 引言 《Ruby on Rails 101》是一本介绍Ruby on Rails(简称RoR或ROR)的基础书籍,旨在为初学者提供一个全面而深入的学习框架。本书由Peter Marklund编写,包含了五天...

    PHP计算机网络工程师简历表格.doc

    在二次开发的项目中,如基于Ecshop的商城和DZ论坛,他使用Ajax实现无刷新功能,以及jQuery库。 5. **Java编程**:求职者在早期的工作中,作为Java程序员参与了一个针对银行和军队的项目,负责将数据以表格形式呈现...

    Wrox - Professional Ruby on Rails (Feb 2008)

    10. **Ajax和JavaScript**:Rails与JavaScript库如jQuery集成良好,书中可能涉及了如何使用Ajax提升用户体验,以及如何利用Rails的Unobtrusive JavaScript(UJS)。 源码文件“Wrox - Professional Ruby on Rails ...

    Grails 技术精解与Web开发实践【源码+样章】----下载不扣分,回帖加1分,欢迎下载,童叟无欺

    Grails 技术精解与Web开发实践【源码+样章】----下载不扣分,回帖加1分,欢迎下载,童叟无欺 第1章 导论 1 1.1 RoR的革命与Web开发的新时代 1 1.2 RoR并不完美 2 1.2.1 Ruby语言方面的不足 2 1.2.2 对历史遗留项目的...

    Agile Web Development with Rails.3rd Edition.2009

    《敏捷Web开发与Rails》是2009年出版的第三版,这是一本深入探讨Ruby on Rails(ROR)框架的权威指南。该书详细介绍了如何运用敏捷开发方法来构建高效、灵活的Web应用程序。在敏捷开发领域,强调的是快速响应变化、...

    Rails-AngularJS-BBS:使用AngularJS和Ruby on Rails,简单的公告板应用自动同步

    AngularJS应用负责用户界面的渲染和交互,通过AJAX技术与Rails后端进行通信。这种前后端分离的方式使得开发更为灵活,也便于各自优化。 **项目结构** 在"Rails-AngularJS-BBS-master"这个压缩包中,我们可以预期...

    tisi-carbide-test:一个问题跟踪器,主要讲授一些Ruby on Rails概念

    在RoR中,这三者之间通过ActiveRecord、ActionView和ActionController紧密协作,构建出高效且易于维护的Web应用。 2. Active Record:RoR中的ActiveRecord是ORM(对象关系映射)库,它将数据库表与Ruby类关联,简化...

    rails-url-shortener:用 Ruby on Rails 开发的个人 URL 缩短器

    JavaScript 是网页开发中的主要脚本语言,用于处理用户交互、动态内容更新以及与服务器进行异步通信(AJAX)。在本项目中,JavaScript 可能被用于创建用户友好的界面,比如表单验证、动态加载数据、提示信息等。 **...

Global site tag (gtag.js) - Google Analytics