What does it take to develop an enterprise application with Rails? Enterprise Rails introduces several time-tested software engineering principles to prepare you for the challenge of building a high-performance, scalable website with global reach. You'll learn how to design a solid architecture that ties the many parts of an enterprise website together, including the database, your servers and clients, and other services as well. Many Rails developers think that planning for scale is unnecessary. But there's nothing worse than an application that fails because it can't handle sudden success. Throughout this book, you'll work on an example enterprise project to learn first-hand what's involved in architecting serious web applications. With this book, you will:
- Tour an ideal enterprise systems layout: how Rails fits in, and which elements don't rely on Rails
- Learn to structure a Rails 2.0 application for complex websites
- Discover how plugins can support reusable code and improve application clarity
- Build a solid data model--a fortress--that protects your data from corruption
- Base an ActiveRecord model on a database view, and build support for multiple table inheritance
- Explore service-oriented architecture and web services with XML-RPC and REST
- See how caching can be a dependable way to improve performance
Building for scale requires more work up front, but you'll have a flexible website that can be extended easily when your needs change. Enterprise Rails teaches you how to architect scalable Rails applications from the ground up.
Author: Dan Chak
Publisher: O'Reilly Media, Inc.
Customer Reviews
-
A diamond in thr rough......
First off let me say that before the publication of this book, the material available for Rails developers has been mediocre at best. Most titles feature either rudimentary examples that bear no relation to real world scenarios or, even worse, a convoluted attempt to show how ruby can be used to construct DSLs. DHH book is by far the best but consistently out-dated to the extent that the tutorial presented in the first part won't work on the latest Rails release.
<br />
<br />Enter Chak's refreshing take on how Rails is used in the real-world. Instead of rehashing the same tired examples, Chak actually discusses what I would characterise as a "best practice" approach to building enterprise Rails apps. This book does for Rails what Shlossnagle's Scalable Internet Architectures does for enterprise web infrastructures. That is it presents an in-depth analysis of how Rails is implemented in the real world. Just some examples:
<br />
<br />Chak discusses why postgres is a better open source solution than mysql for heavily trafficed sites.
<br />
<br />A useful discussion of how to structure your Rails development and production environments and how to correctly implement namespaces and plugins.
<br />
<br />How to utilize SOA and Restful designs.
<br />
<br />All in all this is an excellent book. While not for the beginner it is definitely the book to read after you've developed an app or two. It's database centric approach makes it unique among Rails offerings and will bring you up to speed on the CORRECT way to design and implement databases for any development project.
<br />
<br />This book sorely shows how inadequate the Rails literature has been up to now.
-
The Most Valuable Rails Book I've Ever Read
This much-needed book fills a vacuum in the Rails community: good, solid, in-depth advice on how to build a reliable, scalable, well-organized Rails application. It's the best book out there on software architecture in Rails. You must read this if you are in any sort of technical leadership position on a Rails team.
<br />
<br />The logical models solution alone made the book worth it for me. This book is full of both great theory and practical advice.
<br />
<br />Contents
<br />
<br />1. The Big Picture
<br />2. Organizing with Plugins
<br />3. Organizing with Modules
<br />4. Database As a Fortress
<br />5. Building a Solid Data Model
<br />6. Refactoring to Third Normal Form
<br />7. Domain Data
<br />8. Composite Keys and Domain Key/Normal Form
<br />9. Guaranteeing Complex Relationships with Triggers
<br />10. Multiple Table Inheritance
<br />11. View-Backed Models
<br />12. Materialized Views
<br />13. SOA Primer
<br />14. SOA Considerations
<br />15. An XML-RPC Service
<br />16. Refactoring to Services
<br />17. REST Primer
<br />18. A RESTful Web Service
<br />19. Caching End to End
<br />
<br />If I could give this book six stars, I would. It's worth every penny.
-
The much needed insight into real life with Rails
This book is the missing real-life battlefield guide for Rails. You know, the kind where the guy actually did something big and scalable with Rails, had years of real life practice, and tells you all about it. The book explains how to get the most juice out of Rails while taking advantage of all the incredible (and often forgotten) functionality provided by other tools at your disposal. In a big project Rails is only a player in your team. It does its thing very well, but it doesn't do everything. This book takes Rails out of the spotlight, and instead looks at the whole picture. It explains how to take advantage of services and decoupling, how to protect your data, how to set up your back end, while keeping everything integrated together. If you want the real no-bs explanation of building big projects the right way - this is your book. Dan Chak gives you the advantage of knowing what to do before you have to learn it the hard way. To sum it up - if you are hoping to ever have a successful Rails site this book is a must-read to get your infrastructure in order and save yourself a lot of time.
<br />
<br />There's only one issue with this book - typos are aplenty. Oh well. Just look past it - the content is worth it.
|