- 浏览: 2076046 次
- 性别:
- 来自: NYC
文章分类
- 全部博客 (628)
- Linux (53)
- RubyOnRails (294)
- HTML (8)
- 手册指南 (5)
- Mysql (14)
- PHP (3)
- Rails 汇总 (13)
- 读书 (22)
- plugin 插件介绍与应用 (12)
- Flex (2)
- Ruby技巧 (7)
- Gem包介绍 (1)
- javascript Jquery ext prototype (21)
- IT生活 (6)
- 小工具 (4)
- PHP 部署 drupal (1)
- javascript Jquery sort plugin 插件 (2)
- iphone siri ios (1)
- Ruby On Rails (106)
- 编程概念 (1)
- Unit Test (4)
- Ruby 1.9 (24)
- rake (1)
- Postgresql (6)
- ruby (5)
- respond_to? (1)
- method_missing (1)
- git (8)
- Rspec (1)
- ios (1)
- jquery (1)
- Sinatra (1)
最新评论
-
dadadada2x:
user模型里加上 protected def email ...
流行的权限管理 gem devise的定制 -
Sev7en_jun:
shrekting 写道var pattern = /^(0| ...
强悍的ip格式 正则表达式验证 -
jiasanshou:
好文章!!!
RPM包rpmbuild SPEC文件深度说明 -
寻得乐中乐:
link_to其实就是个a标签,使用css控制,添加一个参数: ...
Rails在link_to中加参数 -
aiafei0001:
完全看不懂,不知所然.能表达清楚一点?
"$ is not defined" 的问题怎么办
写在前面:
第一次,写连载啊,希望能对自己和各位看官有点帮助,多了解一点RubyOnRails开发上的情况吧。能够有点帮助,这就是坚持的理由。^_^
生命百科全书:www.eol.org
网站是基于RoR的,内容是做互动的生命百科博物馆,本文主要介绍,如果通过该网站提供的代码,建立起RoR的网站,并且学习,该网站中使用到的一些,RoR最普通的技术。
资源地址如下,匿名svn下载。
svn://repository.eol.org/eol/trunk/
配置前提
安装ruby
rails和mysql最流行的要求。
其次,
安装gems包
列表如下:
1. ZenTest
2. ruby-debug
3. piston
4. hpricot
实际上这些包都集成到vendor下的gems下了。这是一个相当闪光的办法。对待gem像对待plugin一样,不gems放到vendor gems下
安装如下:
配置数据库
拷贝config/database.yml
根据需要把demo development 和master_database数据库配置正确
加载数据
这里值得学习的是scenarios的加载,比起fixture好用很多,这个插件也在vendor目录下,具体配置和运行是,要看lib下taasks中的rake文件。
运行
并在 http://localhost:3000 下访问,相信到这里我们都已经把网站建立起来了吧。看着应该还不错吧。
测试
该项目的测试使用的是RSpec,这个流行的测试插件,比起rails的unit test写asset 要直观很多。具体可以看spec的目录
执行
你也可以用test password作为口令,测试权限部分。有些特别的页面,可以根据权限进行分配。
当然,共享你的开发经验是好事。 我只是说对本人来说用途不大。根据你说的一定会大量数据处理,而且是交互。请问这是当前已经在处理的数据量,还是假设未来发生的数据量。其实数据库设计得好,单数据库,每秒钟几百到上千个hit都不是问题。本人认为对于大部分case来说,专心设计好数据库表和索引已经是足够。你们的单数据库设计已经到达瓶颈了吗?内存如此便宜,32G, 64G, 128G内存的数据库服务器都不是问题。(DHH同学的数据库方案)
上面的说法很模糊,你们有研究过每秒种的最大请求数吗?到底是那个表的查询最慢。到底每秒的Reads是多少,Writes是多少,是Table locks还是Row locks. 例如,如果你有几百万记录的表(甚至千万)去关联另几个百万数据的表,当然慢。joins heart performance,这就是为什么google的BigTable设计成没有join的原因。又例如,每次访问都去做select count(*) from table1 where ...当然慢,有无考虑Rails的counter_cache。 如果都详细分析过,还是没法解决,本人才建议考虑Master/Slave方案。所以说,Master/Slave方案不算是典型的RoR网站,因为楼主的标题是典型的RoR网站,我看过后,对内容不大同意。
第一次,写连载啊,希望能对自己和各位看官有点帮助,多了解一点RubyOnRails开发上的情况吧。能够有点帮助,这就是坚持的理由。^_^
生命百科全书:www.eol.org
网站是基于RoR的,内容是做互动的生命百科博物馆,本文主要介绍,如果通过该网站提供的代码,建立起RoR的网站,并且学习,该网站中使用到的一些,RoR最普通的技术。
资源地址如下,匿名svn下载。
svn://repository.eol.org/eol/trunk/
配置前提
安装ruby
rails和mysql最流行的要求。
其次,
安装gems包
列表如下:
1. ZenTest
2. ruby-debug
3. piston
4. hpricot
实际上这些包都集成到vendor下的gems下了。这是一个相当闪光的办法。对待gem像对待plugin一样,不gems放到vendor gems下
安装如下:
rake gems # This could give you some errors... rake gems:build # if there are gems that aren't installed or you got that big error... rake gems:install # if there were gems that are STILL missing...
配置数据库
拷贝config/database.yml
根据需要把demo development 和master_database数据库配置正确
加载数据
rake eol:db:create:all # Note the "EOL". This keeps bad things from happening. Please use it. rake db:migrate rake db:migrate RAILS_ENV=test rake truncate rake scenarios:load NAME=foundation,bootstrap rake eol:site_specific repo=URL # Your "URL" (or an alternative) will be provided to you privately.
这里值得学习的是scenarios的加载,比起fixture好用很多,这个插件也在vendor目录下,具体配置和运行是,要看lib下taasks中的rake文件。
运行
script/server
并在 http://localhost:3000 下访问,相信到这里我们都已经把网站建立起来了吧。看着应该还不错吧。
测试
该项目的测试使用的是RSpec,这个流行的测试插件,比起rails的unit test写asset 要直观很多。具体可以看spec的目录
执行
rake spec rake specdoc #out put doc
你也可以用test password作为口令,测试权限部分。有些特别的页面,可以根据权限进行分配。
评论
5 楼
Anxonli
2009-03-11
引用
www.eol.org 是做生命百科全书哦,一定会用到大量的数据处理。而且,他们是想说SNS的社会化网络,要交换,而且是大数据量交互。
当然,共享你的开发经验是好事。 我只是说对本人来说用途不大。根据你说的一定会大量数据处理,而且是交互。请问这是当前已经在处理的数据量,还是假设未来发生的数据量。其实数据库设计得好,单数据库,每秒钟几百到上千个hit都不是问题。本人认为对于大部分case来说,专心设计好数据库表和索引已经是足够。你们的单数据库设计已经到达瓶颈了吗?内存如此便宜,32G, 64G, 128G内存的数据库服务器都不是问题。(DHH同学的数据库方案)
引用
由于数据量庞大,遇到了检索瓶颈,超过200万用户同时检索,系统可以处理,数据库就成了瓶颈。
上面的说法很模糊,你们有研究过每秒种的最大请求数吗?到底是那个表的查询最慢。到底每秒的Reads是多少,Writes是多少,是Table locks还是Row locks. 例如,如果你有几百万记录的表(甚至千万)去关联另几个百万数据的表,当然慢。joins heart performance,这就是为什么google的BigTable设计成没有join的原因。又例如,每次访问都去做select count(*) from table1 where ...当然慢,有无考虑Rails的counter_cache。 如果都详细分析过,还是没法解决,本人才建议考虑Master/Slave方案。所以说,Master/Slave方案不算是典型的RoR网站,因为楼主的标题是典型的RoR网站,我看过后,对内容不大同意。
4 楼
夜鸣猪
2009-03-11
接着,
你说到,
这个,基本上我同意,但是也要看你的需求。就是看你要多大程度上的entitlement tree,如果,权限设计要求没有太高,自己设计的确是不错的选择。但是,在权限需求错综复杂的情况下,加载一个成熟的权限管理系统的值得的。何况,开发和运营不同,要看效果,在插件很好用,支出成本不高的情况下,选择插件可能比较高。
对routes的RESTful设计,Model对数据访问的封装等等,这些对我们开发有实际有用的信息。
这些对于开发确实有用,这篇着重介绍 设计
也是探讨而已,没有冒犯的意思^_^
你说到,
引用
本人的观点是什么autentcation和Role Management这些应用,自己来开发也是非常快捷简单,并不需要用到别人的插件。
这个,基本上我同意,但是也要看你的需求。就是看你要多大程度上的entitlement tree,如果,权限设计要求没有太高,自己设计的确是不错的选择。但是,在权限需求错综复杂的情况下,加载一个成熟的权限管理系统的值得的。何况,开发和运营不同,要看效果,在插件很好用,支出成本不高的情况下,选择插件可能比较高。
引用
对routes的RESTful设计,Model对数据访问的封装等等,这些对我们开发有实际有用的信息。
这些对于开发确实有用,这篇着重介绍 设计
也是探讨而已,没有冒犯的意思^_^
3 楼
夜鸣猪
2009-03-11
^_^
十分感谢楼上的回复
帖子发出来就是用来探讨的,说白来就是希望对自己,对大家能有点好处。
我也很理解,你码字解释“并无多大用途”,我想说的是:
有用没有用要看你是, 干什么,就是我发帖子的定位。
^_^
我的帖子的,定位是介绍一个相对成熟的,运营中的RoR项目,当然,有些地方,我自己理解的也不够,或者,想数据库结构等,很多重要部分写的都没有深入详细,我也承认,水平有限。
但是,大体的目的应该是清楚的。
那么,我们具体探讨一下吧,^_^
对于,第一点,Master/Slave的机制。我认为,用不用分布式,不是看这个网站够不够大,而是,看你的项目是干什么用的,有没有主从分布的数据要求。www.eol.org 是做生命百科全书哦,一定会用到大量的数据处理。而且,他们是想说SNS的社会化网络,要交换,而且是大数据量交互。那么,我认为,这就是EOL把数据库分布的原因。我的介绍,只是说,在这样的需求情况下,rails拥有这样的插件,支持这样的分布解决方案。
那么,从这一点上讲,你说这篇介绍没有用途,那我就不赞成了。或者,你只能说对你自己,或者,初学者,没有用。但不能说,对大部分人没有用。
比如,我们公司在做一个设备管理系统,由于数据量庞大,遇到了检索瓶颈,超过200万用户同时检索,系统可以处理,数据库就成了瓶颈。那么,我们正在讨论解决方案,这时,我的介绍里,关于主从分布的实现,和实现方法,就是有用的借鉴。所以,这样的介绍,对我而言是有用的。^_^ 探讨而已
十分感谢楼上的回复
帖子发出来就是用来探讨的,说白来就是希望对自己,对大家能有点好处。
我也很理解,你码字解释“并无多大用途”,我想说的是:
有用没有用要看你是, 干什么,就是我发帖子的定位。
^_^
我的帖子的,定位是介绍一个相对成熟的,运营中的RoR项目,当然,有些地方,我自己理解的也不够,或者,想数据库结构等,很多重要部分写的都没有深入详细,我也承认,水平有限。
但是,大体的目的应该是清楚的。
那么,我们具体探讨一下吧,^_^
对于,第一点,Master/Slave的机制。我认为,用不用分布式,不是看这个网站够不够大,而是,看你的项目是干什么用的,有没有主从分布的数据要求。www.eol.org 是做生命百科全书哦,一定会用到大量的数据处理。而且,他们是想说SNS的社会化网络,要交换,而且是大数据量交互。那么,我认为,这就是EOL把数据库分布的原因。我的介绍,只是说,在这样的需求情况下,rails拥有这样的插件,支持这样的分布解决方案。
那么,从这一点上讲,你说这篇介绍没有用途,那我就不赞成了。或者,你只能说对你自己,或者,初学者,没有用。但不能说,对大部分人没有用。
比如,我们公司在做一个设备管理系统,由于数据量庞大,遇到了检索瓶颈,超过200万用户同时检索,系统可以处理,数据库就成了瓶颈。那么,我们正在讨论解决方案,这时,我的介绍里,关于主从分布的实现,和实现方法,就是有用的借鉴。所以,这样的介绍,对我而言是有用的。^_^ 探讨而已
2 楼
Anxonli
2009-03-11
首先,多谢楼主的连载
不好意思地说,本人认识次系列的文章对我而言,并无多大用途。第一点,就数据库设计用Master/Slave这一点,就觉得它并不是一个典型的RoR网站。连37Signals这样的一个有超过1百万付费用户的网站,都不需要到用Master/Slave数据库设计。第二点楼主的几篇文章就告诉我们要装什么插件和怎么装,这些信息本身对我们并无大用途。文章缺乏,例如,对routes的RESTful设计,Model对数据访问的封装等等,这些对我们开发有实际有用的信息。
本人的观点是什么autentcation和Role Management这些应用,自己来开发也是非常快捷简单,并不需要用到别人的插件。另外,数据库本身表和负载的设计都没有谈,直接最后就说Cache。本人认为文章设计上不大好。很多人在做项目的时候,连数据库本身都没设计好,就去想Cache的设计,实在没有必要。
以上是本人的愚见,如有冒犯,敬请原谅。
不好意思地说,本人认识次系列的文章对我而言,并无多大用途。第一点,就数据库设计用Master/Slave这一点,就觉得它并不是一个典型的RoR网站。连37Signals这样的一个有超过1百万付费用户的网站,都不需要到用Master/Slave数据库设计。第二点楼主的几篇文章就告诉我们要装什么插件和怎么装,这些信息本身对我们并无大用途。文章缺乏,例如,对routes的RESTful设计,Model对数据访问的封装等等,这些对我们开发有实际有用的信息。
本人的观点是什么autentcation和Role Management这些应用,自己来开发也是非常快捷简单,并不需要用到别人的插件。另外,数据库本身表和负载的设计都没有谈,直接最后就说Cache。本人认为文章设计上不大好。很多人在做项目的时候,连数据库本身都没设计好,就去想Cache的设计,实在没有必要。
以上是本人的愚见,如有冒犯,敬请原谅。
1 楼
k_cancer
2009-03-10
为什么是 SVN下载。。。、、、、
发表评论
-
Destroying a Postgres DB on Heroku
2013-04-24 10:58 935heroku pg:reset DATABASE -
VIM ctags setup ack
2012-04-17 22:13 3259reference ctags --extra=+f --e ... -
alias_method_chain方法在3.1以后的替代使用方式
2012-02-04 02:14 3295alias_method_chain() 是rails里的一个 ... -
一些快速解决的问题
2012-01-19 12:35 1472问题如下: 引用Could not open library ... -
API service 安全问题
2011-12-04 08:47 1386这是一个长期关注的课题 rest api Service的 ... -
Module方法调用好不好
2011-11-20 01:58 1349以前说,用module给class加singleton方法,和 ... -
一个ajax和rails交互的例子
2011-11-19 01:53 1908首先,这里用了一个,query信息解析的包,如下 https: ... -
Rails 返回hash给javascript
2011-11-19 01:43 2277这是一个特别的,不太正统的需求, 因为,大部分时候,ajax的 ... -
关于Rubymine
2011-11-18 23:21 2267开个帖子收集有关使用上的问题 前一段时间,看到半价就买了。想 ... -
ruby中和javascript中,动态方法的创建
2011-11-18 21:01 1241class Klass def hello(*args) ... -
textmate快捷键 汇总
2011-11-16 07:20 8147TextMate 列编辑模式 按住 Alt 键,用鼠标选择要 ... -
Ruby面试系列六,面试继续面试
2011-11-15 05:55 2025刚才受到打击了,充分报漏了自己基础不扎实,不肯向虎炮等兄弟学习 ... -
说说sharding
2011-11-13 00:53 1492这个东西一面试就有人 ... -
rails面试碎碎念
2011-11-12 23:51 1946面试继续面试 又有问ru ... -
最通常的git push reject 和non-fast forward是因为
2011-11-12 23:29 17216git push To git@github.com:use ... -
Rails 自身的many to many关系 self has_many
2011-11-12 01:43 2738简单点的 #注意外键在person上people: id ... -
Rails 3下的 in place editor edit in place
2011-11-12 01:20 946第一个版本 http://code.google.com/p ... -
Heroku 的诡异问题集合
2011-11-11 07:22 1697开个Post记录,在用heroku过程中的一些诡异问题和要注意 ... -
SCSS 和 SASS 和 HAML 和CoffeeScript
2011-11-07 07:52 12960Asset Pipeline 提供了内建 ... -
Invalid gemspec because of the date format in specification
2011-11-07 02:14 2122又是这个date format的错误。 上次出错忘了,记录下 ...
相关推荐
题目:建立一个名为Student的类,该类有以下几个私有成员变量:学生姓名、学号、性别、年龄。还有以下两个成员函数:一个用于初始化学生姓名、学号、性别和年龄的构造函数,一个用于输出学生信息的函数。编写一个...
VisualC 实效编程 117 建立一个快捷方式VisualC 实效编程 117 建立一个快捷方式VisualC 实效编程 117 建立一个快捷方式VisualC 实效编程 117 建立一个快捷方式VisualC 实效编程 117 建立一个快捷方式VisualC 实效...
编制一段程序,实现进程的管道通信,使用系统调用pipe()建立一个管道文件;两个子进程P1和P2 分别向管道各写一句话: Child1 is sending a message! Child2 is sending a message! 而父进程则从管道中读出来自于...
本项目“Ruby-在一个简单的UI中管理您的RubyOnRails模型关系和迁移”旨在提供一个直观的用户界面,以便开发者能够更加方便地管理和操作Rails应用中的数据模型、关系和数据库迁移。 在Rails中,数据模型(Model)...
使用系统调用pipe()建立一条管道线;两个子进程P1和P2分别向管道各写一句话: Message from Child l! Message from Child 2! 父进程从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求父进程先接收子...
队列的链表存储结构及实现: 1 建立链表队列 2 入队一个元素 3 出队一个元素 4 结束程序运行
A股财务造假预测模型的建立--一个模型化的全新识别系统
•new:建立一个新的简单文件系统; •sfs:打开一个简单文件系统; •exit:退出打开的简单文件系统; •mkdir:创建子目录; •rmdir:删除子目录; •ls:显示目录; •cd:更改当前目录; •create:创建文件; ...
从建立一个quartus工程开始,再利用SOPC Builder工具建立一个包含 onchip_memory,ssram,sdram,CF flash,lcd,led,key等多个外设接口 的Nios_ii系统。
内容概要:本文针对燃烧优化参数调整实验复杂和耗时的特点,提出了一种基于工况优选的燃烧优化典型样本库的建立方法。通过移动最小二乘法(MLS)对电厂历史数据进行拟合,筛选出典型工况,并利用三次样条插值法建立...
在IT行业中,数据库同步是一个常见的需求,特别是在分布式系统或者数据备份场景下。本文将深入探讨如何使用Java编程语言实现从一个数据库中定时自动抽取数据并复制到另一个数据库,以达到数据库间的实时或近实时同步...
该结构体包含三个成员:一个字符型变量 `data` 存储节点值,两个指向相同类型结构体的指针 `lchild` 和 `rchild` 分别表示节点的左子树和右子树。 ```cpp struct btnode { char data; // 节点数据 bitreptr ...
把关键字、算符、界符称为语言固有...为此设置三个全程量:SYM,ID,NUM 。 SYM:存放每个单词的类别,为内部编码的表示形式。 ID:存放用户所定义的标识符的值,即标识符字符串的机内表示。 NUM:存放用户定义的数。
1. 设备重定向器问题:设备重定向是远程桌面连接的一个特性,它允许用户将本地的打印机、硬盘驱动器或其他设备与远程会话连接起来。如果设备重定向出现问题,可能会导致连接中断。例如,某些硬件设备的驱动程序不...
本文将深入探讨如何使用差分方法来求解一个典型的偏微分方程实例,以及如何利用MATLAB的强大力量来实现这一过程。 首先,我们要理解“弱形式”。在偏微分方程的数值解法中,弱形式是一种常见的处理手段。通常,我们...
下面,我们通过四个典型的应用例题,详细探讨一次函数在实际问题中的应用。 在例1中,一个服装厂面临生产决策的问题。根据题目给出的两种不同布料的库存量,以及生产两种型号时装所需布料数量和各型号时装的利润...
根据每一个一元线性回归模型的检验结果,选择其中一个模型为基本模型,逐步加入其它解释变量建立二元线性回归模型;建立最终确定的被解释变量Y与解释变量Xi的二元线性回归模型;以建立的多元线性回归模型为基础,...
在这个典型的网站建设案例中,我们有8个不同的源码示例,这将帮助我们深入理解如何在实际项目中应用ASP和SQL Server。 1. **ASP基础概念** ASP是Web开发中的一个核心技术,它允许开发者在服务器端编写脚本,生成...
教材中通过精心挑选的四个典型例题,旨在向学生展示一次函数在解决实际问题中的重要性。 例题一以风速变化为例,通过建立一次函数模型,形象地描述了风速随时间变化的关系。这不仅是对一次函数概念的实践应用,也给...
首先,Qt是一个跨平台的应用程序开发框架,它提供了丰富的库和工具,用于创建图形用户界面。在Qt Creator中,我们可以使用Qtdesigner设计UI界面,然后通过uic(用户界面编译器)将UI文件转换为C++代码。 标题中的...