• Ruby Rack及其应用(上)

    你可能听说过Rails、Sinatra这些Ruby Web框架,也可能尝试过其中一、两个,但如果你还不了解Rack甚至根本没听说过它,那么你的Ruby Web开发还停留在表面:Ruby Rack是前面这些Ruby Web框架的基础,Rails和Sinatra都建立在它之上;不了解Rack的原理就无法真正理解你的Ruby Web应用的架构与工作机制、对一些复杂的问题也无能无力。任何一个正经的Ruby Web开发者都应该了解、掌握Rack。 继续阅读 »

  • Sinatra + ActiveRecord = Really Lean Startup?

    为什么不是Rails?因为Rails太臃肿了!如果你有一个好创意,你应该从Sinatra轻快地开始。Sinatra十分轻盈——它只是在Rack的基础上添加了一些必要的辅助功能,如routes、views以及一些HTTP辅助方法,总共不到2500行代码(v1.4.7)——框架代码越少越好,这样你就容易掌控全局;相比之下,Rails仅ActiveRecord代码就超过35000行! 继续阅读 »

  • 在Ruby Rack应用中直接使用MongoDB Ruby Driver

    在Ruby程序中使用MongoDB你有两种主要的选择:Mongoid或者是MongoDB官方的Ruby Driver。有这么一种常见的说法:Mongoid一般用于Rack应用程序,如Rails,而MongoDB Ruby Driver则用在Rack应用以外的领域。然而,在Rack应用程序中直接使用MongoDB Ruby Driver也并没有什么问题,与Mongoid相比还有一些优点: 继续阅读 »

  • ActiveRecord批量写入(Bulk Insert/Upsert)的问题与解决

    Ruby ActiveRecord向数据库的批量写入效率很低:要插入一条记录,你只能先用model的`create`方法构造一个对象,然后保存到数据库;如果你有一批数据要插入,你就要循环调用`create`方法——这一过程可能缓慢到令人难以忍受! 继续阅读 »

RSS订阅