<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>
<channel>
	<title>超群.com的博客 &#187; ruby</title>
	<atom:link href="http://www.fuchaoqun.com/tag/ruby/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.fuchaoqun.com</link>
	<description></description>
	<lastBuildDate>Thu, 08 Sep 2011 15:08:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>周日混QClub手记</title>
		<link>http://www.fuchaoqun.com/2008/10/qclub-ruby-on-rails/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=qclub-ruby-on-rails</link>
		<comments>http://www.fuchaoqun.com/2008/10/qclub-ruby-on-rails/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 03:14:07 +0000</pubDate>
		<dc:creator>超群.com</dc:creator>
				<category><![CDATA[Arch]]></category>
		<category><![CDATA[caibanzi]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<guid isPermaLink="false">http://chaoqun.17348.com/?p=97</guid>
		<description><![CDATA[本博客所有原创文章采用知识共享署名-非商业性使用-相同方式共享，转载请保留链接http://chaoqun.17348.com/2008/10/qclub-ruby-on-rails/ 周日(2008-10-19)下午，去听了听QClub组织的Ruby网站架构案例分享──财帮子&#38;FreeWheel，本意是冲着架构案例分享去的，对Ruby On Rails知之甚少，很久以前和BLUG的一位外国朋友聊天，他说是做Ruby的，我说Ruby是日本人开发的语言，还没等我说完，这位外国的朋友说：It&#8217;s just a language,nothin to do with Japanese，其实我的本意是这是日本人开发的语言，国际化方面可能会差一些，比如最原始的文档应该是日文的吧。看来我们总是被人误会啊。 首先是财帮子的Robin Lu(陆亦斌)给我们分享了一下他们的建站经历，先介绍一下财帮子的基本情况： 财帮子目前大概是100万PV/天，注册用户大概十几万 人均访问PV大概在15～20个左右 网站访问的峰值大约在基金净值出来之后，最高大概是430 Rec/Sec 最开始只有一台1U的服务器，应用和数据库都在上面，现在两台1U的服务器，应用服务一台，数据库一台 系统构建在Ruby On Rails上 使用lighttpd做负载均衡，30个左右mongrel实例 使用Munin和monit做服务器监控，跑了一些的cron任务(如数据备份) 他们遇到的第一个问题是前端负载均衡效率不高，最开始用apache的mod_proxy_balancer，发现有阻塞的情况存在，现在用的是lighttpd做负载均衡，他们觉得效果不错，据说还毙掉了nginx的方案，由于久做PHP，印象中前端负载均衡应该是把请求均衡到多台服务器上，初一听他们的负载均衡是把请求均衡到多个实例上，觉得甚是费解，一打听才知道mongrel一次大概只能处理一个请求，不太了解，不好评论。 他们的第二个问题是发现Ruby On Rails里面的数据库操作有大的瓶颈，大概是对数据库的操作始终在一个事务中，不到最后不commit，所以导致死锁的情况屡有发生。这让我想起Rasmus Lerdorf老大对PHP Framework的批判Simple is Hard(用IE会被鄙视的)，Framework大大提高了开发的效率，却捆住了我们的双手。如果想要高的效率，那么就让ORM见鬼去吧。 他们还有一个好的建议是把动态内容和静态文件分开处理（当然这个建议已经被无数人说过了），这个确实非常有必要。 听完报告，问了下财帮子目前的瓶颈在什么地方，答曰：内存缺乏，跑了30个mongrel直接就吃掉了2G多的内存，确实够凶猛。这方面PHP算是不错了。 另外报告中还提到他们每天需要2～3小时去处理用户的账单，比如基金净值出来了，然后他们会计算每个用户的账单情况，这种做法不太看好，想想现在十几万用户可以算出来，将来多了呢？多台服务器并行计算？可计算成本呢？提前计算网站的活跃用户足够了，那些几百年才来一次的用户或者注册了再也不上的用户大可不必，等他们访问的时候再实时计算吧。 后面分享的FreeWheel讲的大多是项目开发方面的经验，我倒是觉得FreeWheel的做法不错，各种Framewok适合快速开发网站，不见得适合开发快速的网站。 感谢财帮子和FreeWheel的分享，技术其实就那么点事，还是开放一点好。 对Ruby On Rails实在了解甚少，上述内容如有不到之处，请不吝赐教。]]></description>
			<content:encoded><![CDATA[<blockquote><p>本博客所有原创文章采用<a href="http://creativecommons.org/licenses/by-nc-sa/2.5/cn/" target="_blank"><span style="color: #356aa0;">知识共享署名-非商业性使用-相同方式共享</span></a>，转载请保留链接<a href="http://chaoqun.17348.com/2008/10/qclub-ruby-on-rails/">http://chaoqun.17348.com/2008/10/qclub-ruby-on-rails/</a></p></blockquote>
<p>周日(2008-10-19)下午，去听了听QClub组织的<a href="http://www.infoq.com/cn/news/2008/10/qclub-ruby-case-studies" target="_blank">Ruby网站架构案例分享──财帮子&amp;FreeWheel</a>，本意是冲着架构案例分享去的，对Ruby On Rails知之甚少，很久以前和<a href="http://www.beijinglug.org/" target="_blank">BLUG</a>的一位外国朋友聊天，他说是做Ruby的，我说Ruby是日本人开发的语言，还没等我说完，这位外国的朋友说：It&#8217;s just a language,nothin to do with Japanese，其实我的本意是这是日本人开发的语言，国际化方面可能会差一些，比如最原始的文档应该是日文的吧。看来我们总是被人误会啊。</p>
<p>首先是<a href="http://www.caibangzi.com/" target="_blank">财帮子</a>的<a href="http://www.robinlu.com/" target="_blank">Robin Lu</a>(陆亦斌)给我们分享了一下他们的建站经历，先介绍一下财帮子的基本情况：</p>
<ul>
<li>财帮子目前大概是100万PV/天，注册用户大概十几万</li>
<li>人均访问PV大概在15～20个左右</li>
<li>网站访问的峰值大约在基金净值出来之后，最高大概是430 Rec/Sec</li>
<li>最开始只有一台1U的服务器，应用和数据库都在上面，现在两台1U的服务器，应用服务一台，数据库一台</li>
<li>系统构建在Ruby On Rails上</li>
<li>使用<a href="http://www.lighttpd.net/" target="_blank">lighttpd</a>做负载均衡，30个左右<a href="http://mongrel.rubyforge.org/" target="_blank">mongrel</a>实例</li>
<li>使用<a href="http://munin.projects.linpro.no/" target="_blank">Munin</a>和monit做服务器监控，跑了一些的cron任务(如数据备份)</li>
</ul>
<p>他们遇到的第一个问题是前端负载均衡效率不高，最开始用apache的mod_proxy_balancer，发现有阻塞的情况存在，现在用的是lighttpd做负载均衡，他们觉得效果不错，据说还毙掉了<a href="http://nginx.net/" target="_blank">nginx</a>的方案，由于久做PHP，印象中前端负载均衡应该是把请求均衡到多台服务器上，初一听他们的负载均衡是把请求均衡到多个实例上，觉得甚是费解，一打听才知道mongrel一次大概只能处理一个请求，不太了解，不好评论。</p>
<p>他们的第二个问题是发现Ruby On Rails里面的数据库操作有大的瓶颈，大概是对数据库的操作始终在一个事务中，不到最后不commit，所以导致死锁的情况屡有发生。这让我想起Rasmus Lerdorf老大对PHP Framework的批判<a href="http://talks.php.net/show/cmu08" target="_blank">Simple is Hard</a>(用IE会被鄙视的)，Framework大大提高了开发的效率，却捆住了我们的双手。如果想要高的效率，那么就让ORM见鬼去吧。</p>
<p>他们还有一个好的建议是把动态内容和静态文件分开处理（当然这个建议已经被无数人说过了），这个确实非常有必要。</p>
<p>听完报告，问了下财帮子目前的瓶颈在什么地方，答曰：内存缺乏，跑了30个mongrel直接就吃掉了2G多的内存，确实够凶猛。这方面PHP算是不错了。</p>
<p>另外报告中还提到他们每天需要2～3小时去处理用户的账单，比如基金净值出来了，然后他们会计算每个用户的账单情况，这种做法不太看好，想想现在十几万用户可以算出来，将来多了呢？多台服务器并行计算？可计算成本呢？提前计算网站的活跃用户足够了，那些几百年才来一次的用户或者注册了再也不上的用户大可不必，等他们访问的时候再实时计算吧。</p>
<p>后面分享的<a href="http://www.freewheel.tv/" target="_blank">FreeWheel</a>讲的大多是项目开发方面的经验，我倒是觉得FreeWheel的做法不错，各种Framewok适合快速开发网站，不见得适合开发快速的网站。</p>
<p>感谢财帮子和FreeWheel的分享，技术其实就那么点事，还是开放一点好。</p>
<p>对Ruby On Rails实在了解甚少，上述内容如有不到之处，请不吝赐教。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fuchaoqun.com/2008/10/qclub-ruby-on-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
