2008-01-30
RoR企业应用实践之二:Ajax与维护
前些天写了“RoR企业应用实践之一:移植物资管理系统”(http://lgx522.javaeye.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书,真是相当的痛心。唉,谁叫咱爱上这一行呢?
实在话:
不是人家不好,而是咱基本上用不着。
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书,真是相当的痛心。唉,谁叫咱爱上这一行呢?
实在话:
不是人家不好,而是咱基本上用不着。
评论
yapi
2008-03-07
rjs+prototype+scriptaculous
carlosbdw
2008-02-04
直接用prototype也太恐怖了吧
caryl
2008-02-01
ext2可以用json跟rails交互,还是挺方便的。
不过对ext2的体积和效率小有顾虑。
不过对ext2的体积和效率小有顾虑。
lgx522
2008-02-01
carlosbdw 写道
rails上如何使用ext2呢?
不知道,只用到自带的prototype等,有经验的同道可以跟帖谈一谈用ext2。
lgx522
2008-02-01
cquaker 写道
能不能说说拼音首码输入的实现,用户表里是多一列拼音首字母字段,还是用一虚拟字段。
稍微具体点
稍微具体点
是用一列拼音首字母段。
View这层用observe_field
carlosbdw
2008-02-01
rails上如何使用ext2呢?
cquaker
2008-02-01
能不能说说拼音首码输入的实现,用户表里是多一列拼音首字母字段,还是用一虚拟字段。
稍微具体点
稍微具体点
lgx522
2008-01-31
Sorry,由于日常工作中所需要的报表都是普通表格,所以用<table>加css就可搞定。
那些花哨的没有经验。
那些花哨的没有经验。
oldrev
2008-01-31
楼主能不能介绍一下Rails 的报表如何处理,是不是用的 Ruport?
lgx522
2008-01-31
chenjinlai 写道
Windows+Apache+Mongrel 出现mogrel进程堵塞你咋处理
session是存储在mysql中的,所以mongrel进程堵塞时就kill掉重启。
chenjinlai
2008-01-30
Windows+Apache+Mongrel 出现mogrel进程堵塞你咋处理
发表评论
提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则
- 浏览: 76148 次

- 详细资料
搜索本博客
最新评论
-
OO和SQL,应该携手共进
世界本来就是一个平衡体, 分析问题也要如此心态
-- by spiritfrog -
OO和SQL,应该携手共进
本来就是如此,各有所长嘛!
-- by hatedance -
Spring性能小测,参其它技 ...
laiseeme 写道hibernate没问题 有问题的是用hibernate的 ...
-- by xellos -
Spring性能小测,参其它技 ...
王者之剑 写道我觉得这个贴子应该成为精华贴, 如果将这类问题老是搞得看不见的话, ...
-- by davidcen -
Spring性能小测,参其它技 ...
jander 写道icewubin 写道williamy 写道 2。上面谁说OR ...
-- by icewubin






评论排行榜