- 浏览: 2072401 次
- 性别:
- 来自: 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 928heroku pg:reset DATABASE -
VIM ctags setup ack
2012-04-17 22:13 3255reference ctags --extra=+f --e ... -
alias_method_chain方法在3.1以后的替代使用方式
2012-02-04 02:14 3288alias_method_chain() 是rails里的一个 ... -
一些快速解决的问题
2012-01-19 12:35 1470问题如下: 引用Could not open library ... -
API service 安全问题
2011-12-04 08:47 1379这是一个长期关注的课题 rest api Service的 ... -
Module方法调用好不好
2011-11-20 01:58 1344以前说,用module给class加singleton方法,和 ... -
一个ajax和rails交互的例子
2011-11-19 01:53 1903首先,这里用了一个,query信息解析的包,如下 https: ... -
Rails 返回hash给javascript
2011-11-19 01:43 2272这是一个特别的,不太正统的需求, 因为,大部分时候,ajax的 ... -
关于Rubymine
2011-11-18 23:21 2262开个帖子收集有关使用上的问题 前一段时间,看到半价就买了。想 ... -
ruby中和javascript中,动态方法的创建
2011-11-18 21:01 1234class Klass def hello(*args) ... -
textmate快捷键 汇总
2011-11-16 07:20 8138TextMate 列编辑模式 按住 Alt 键,用鼠标选择要 ... -
Ruby面试系列六,面试继续面试
2011-11-15 05:55 2018刚才受到打击了,充分报漏了自己基础不扎实,不肯向虎炮等兄弟学习 ... -
说说sharding
2011-11-13 00:53 1481这个东西一面试就有人 ... -
rails面试碎碎念
2011-11-12 23:51 1939面试继续面试 又有问ru ... -
最通常的git push reject 和non-fast forward是因为
2011-11-12 23:29 17209git push To git@github.com:use ... -
Rails 自身的many to many关系 self has_many
2011-11-12 01:43 2731简单点的 #注意外键在person上people: id ... -
Rails 3下的 in place editor edit in place
2011-11-12 01:20 945第一个版本 http://code.google.com/p ... -
Heroku 的诡异问题集合
2011-11-11 07:22 1692开个Post记录,在用heroku过程中的一些诡异问题和要注意 ... -
SCSS 和 SASS 和 HAML 和CoffeeScript
2011-11-07 07:52 12952Asset Pipeline 提供了内建 ... -
Invalid gemspec because of the date format in specification
2011-11-07 02:14 2115又是这个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! 父进程从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求父进程先接收子...
"使用Anylogic建立一个银行模型" 在本教程中,我们将使用Anylogic建立一个简单的银行排队模型,旨在模拟银行内部的业务流程。我们将使用Anylogic的流程建模库和三维动画功能来建立模型,并使用triangular分布函数来...
在数据库创建一个名为BookStore的数据库,在BookStore数据库中添加一个BookInfo表用于存储图书信息表,再往表里面添加一些测试数据、前端页面以表格形式显示所有图书信息、并完成增加添加书籍、修改书籍、删除书籍的...
•new:建立一个新的简单文件系统; •sfs:打开一个简单文件系统; •exit:退出打开的简单文件系统; •mkdir:创建子目录; •rmdir:删除子目录; •ls:显示目录; •cd:更改当前目录; •create:创建文件; ...
教师档案管理系统是一个典型的高校档案管理系统,其开发过程主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。而对于后者则要求其...
在IT行业中,数据库同步是一个常见的需求,特别是在分布式系统或者数据备份场景下。本文将深入探讨如何使用Java编程语言实现从一个数据库中定时自动抽取数据并复制到另一个数据库,以达到数据库间的实时或近实时同步...
把关键字、算符、界符称为语言固有...为此设置三个全程量:SYM,ID,NUM 。 SYM:存放每个单词的类别,为内部编码的表示形式。 ID:存放用户所定义的标识符的值,即标识符字符串的机内表示。 NUM:存放用户定义的数。
在任一OS下,建立一个大文件,把它假象成一张盘,在其中实现一个简单的 模拟Linux文件系统 在现有机器硬盘上开辟20M的硬盘空间,作为设定的硬盘空间。 2. 编写一管理程序对此空间进行管理,以模拟Linux文件系统,...
这个"java写的一个简单的websocket服务端"示例是一个很好的起点,用于理解如何使用Java来实现WebSocket服务端。 在Java中,WebSocket的实现主要依赖于`javax.websocket` API,这个API是Java标准EE 7及更高版本的一...
本文将深入探讨如何使用差分方法来求解一个典型的偏微分方程实例,以及如何利用MATLAB的强大力量来实现这一过程。 首先,我们要理解“弱形式”。在偏微分方程的数值解法中,弱形式是一种常见的处理手段。通常,我们...
约瑟夫环2、 约瑟夫(Josephus)环问题:编号为1,2,3,…,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数的上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时...
首先,Qt是一个跨平台的应用程序开发框架,它提供了丰富的库和工具,用于创建图形用户界面。在Qt Creator中,我们可以使用Qtdesigner设计UI界面,然后通过uic(用户界面编译器)将UI文件转换为C++代码。 标题中的...
在这个典型的网站建设案例中,我们有8个不同的源码示例,这将帮助我们深入理解如何在实际项目中应用ASP和SQL Server。 1. **ASP基础概念** ASP是Web开发中的一个核心技术,它允许开发者在服务器端编写脚本,生成...
对于那些需要快速为企业建立网站的专业人士,这个源代码可能是一个实用的起点,因为它可以直接用于基础框架,然后根据实际需求进行修改和扩展。 【标签】"asp网站源代码"进一步确认了该压缩包的核心内容,即与ASP...
设计一个简单的文件系统,用文件模拟磁盘,用数组模拟缓冲区,要求: (1) 支持多级目录结构,支持文件的绝对读路径; (2) 文件的逻辑结构采用流式结构,物理结构采用链接结构中的显式链接方式; (3) 采用文件...