Merb
Original author(s) | Ezra Zygmuntowicz |
---|---|
Developer(s) | Ezra Zygmuntowicz & Yehuda Katz |
Final release | 1.1.3[3]
/ July 12, 2010 |
Repository | |
Written in | Web application framework |
License | MIT License |
Website | http://www.merbivore.com |
Merb is a discontinued model–view–controller web framework in Ruby, notable as a precursor to Rails 3. It brought increased focus on speed and modularity to Rails 3.[4][5] The name Merb is a contraction of "Mongrel" and "Erb".[6]
Precursor to and merge with Rails 3
Merb began as a "clean-room" implementation
Differences from Ruby on Rails
Merb's design attempted to address several criticisms of Rails 2:
- lack of component modularity (monolithic design)
- lack of an extensible API
- lack of vertical scalability
Modularity
Merb itself encompassed only the controller layer in
Well-defined API
Before the Merb / Rails 3 merge, Rails lacked a well-defined, documented, public API for extensions and plug-ins, leading to issues when Rails changes broke monkey-patches performed by plug-ins. With the Rails 3 / Merb merge, Rails gained a defined public API with a test suite,[9] giving users and plugin developers a clearer, more stable API to build against, reducing plugin breakage from release to release.[8]
Performance and scalability
Some early versions of Rails received bad publicity for lack of performance, frequently due to developer confusion about ActiveRecord queries. David Heinemeier Hansson, the creator of Rails, stated that Merb re-wrote many core Rails pieces to be faster,[8] and incorporated those changes from Merb in the Rails 3 merge, promising users that "Rails 3 will get all the performance attention that the Merb guys are known for".[8]
References
- ^ Zygmuntowicz, Ezra. "No Code is Faster Than No Code". Twitter. Retrieved 2 April 2015.
- ^ Grosenbach, Geoffrey. "Origin of, "No code is faster than no code."". Twitter. Ezra Zygmuntowicz. Retrieved 2 April 2015.
- ^ "1.1.3". GitHub.
- ^ Boone, Paul (18 Sep 2008). "Rails/Merb performance comparison (on mongrel, jruby, tomcat, glassfish)". mindbucket.com. Archived from the original on 14 July 2011.
- ^ "Ruby on Rails 3.0 Release Notes". Ruby on Rails Guides. Retrieved 18 July 2020.
- ^ Zygmuntowicz, Ezra (18 Oct 2006). "ANN: Merb, Mongrel+Erb". osdir.com]. Archived from the original on 2009-12-31.
- ^ Zygmuntowicz, Ezra (23 Dec 2008). "Merb *is* Rails".
- ^ a b c d Hansson, David Heinemeier (23 Dec 2008). "Merb gets merged into Rails 3!". weblog.rubyonrails.org. Retrieved 18 July 2020.
- ^ a b Katz, Yehuda (23 Dec 2008). "Rails and Merb Merge". yehudakatz.com.
- ^ Aimonetti, Matt (9 Nov 2008). "Merb 1.0 released". Merbist.
- ^ "merb-core gem dependencies". 23 Mar 2010.
- ^ "merb gem dependencies". 23 Mar 2010.