Advanced Search
Start Your Free Trial

Overview

Other Readers Also Read...

Top Sellers in this Category

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. "Enterprise Rails is indispensable for anyone planning to build enterprise web services. It's one thing to get your service off the ground with a framework like Rails, but quite another to construct a system that will hold up at enterprise scale. The secret is to make good architectural choices from the beginning. Chak shows you how to make those choices. Ignore his advice at your peril." -- Hal Abelson, Prof. of Computer Science and Engineering, MIT

Amazon.com® Reader Reviews (Ranked by Helpfulness)

Average Amazon.com® Rating: 4.5 out of 5 rating Based on 15 Ratings

Superb intro to enterprise web applications; a little light on Rails - 2009-04-07
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
Dan Chak has written a really excellent introduction to enterprise web application architecture, and a worthy candidate for your technical bookshelf.

Calling it "Enterprise Rails" is a bit misleading, though. Rails only makes fleeting appearances. There's a great introduction to Rails plugin writing, which rightfully urges developers to move any decorator code to plugin modules. He talks a little about segmenting class files along Physical, Logical and Service boundaries, the point of which I have yet to understand completely. And there's a chapter on pushing Rails' application-layer polymorphism down to the data layer, which is good advice, but more on that later.

The bulk of Enterprise Rails is devoted to building a solid data layer. Again, good advice. The Rails team decided that referential integrity and validation belongs in the application layer, which Chak contends is dangerous (and I believe him). However, this is where things start to get a little hairy - enforcing referential integrity and validation in the data layer requires an early and continued adherence to SQL, and Chak makes it clear that any old SQL won't do: it's PostgreSQL or nothing.

This makes fully half of the book a dissertation on SQL domain description language from the Postgre perspective, domain data, third normal form and other data layer topics. I have greatly enjoyed the introduction to Postgres DDL, but it wasn't exactly what I expected from a Rails book.

The last few chapters are mostly about Service Oriented Architecture (which I suspect is why most people buy this book) and caching. Chak shows why he's an expert in enterprise software architecture here. But again, he takes a decidedly anti-Rails approach, emphasizing ActionWebService and XML-RPC. This is not without reason - nearly every language has an XML-RPC library. But ActionWebService, as Chak notes, isn't part of core Rails any longer.

REST is quickly reviewed, then mostly dismissed. There's a cursory example of a RESTful service. ActiveResource, Rails' useful core module for REST-oriented SOA, is never mentioned.

Pretty much every time Rails comes up in Enterprise Rails (which, as we've seen, isn't often), it's an opportunity for Chak to take it down a peg. Well, Rails deserves it. But I think that slapping the word "Rails" on the book cover is has more to do with marketing than anything else. This is really a tale about data modeling for the enterprise, with an emphasis on Postgre, told by an expert.

I'd say that this is required reading for enterprise developers, but don't take the "Rails" part of the title too seriously.

Must read before you develop enterprise application. - 2009-10-12
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
It addressed the real world problems of Rails. It's emphasized the organization and code sharing when you put the Plugin chapter at the very beginning of the book. I got very frustrated on most of the Rails book since they seem to threat database as annoyance and just focus on quick demo app w/o thought of real world apps. If you finish the book Agile Web Development with Rails book, this is the 2nd one to read. It will saves you a lot of trail and error when you go through the large scale application.

You are going to see a lot of advance database stuff here (Postgres) and it will convince you why you should take advantage of those features.

I wish the book has more chapters for "View", authentication and authorization.

Also, having examples with MySQL5 trigger and store proedure would not hurt either.

Must have book for building scalable enterprise Rails apps - 2009-08-19
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
I bought this book based on a recommendation from a friend and I'm so glad that I did. While I was expecting the book to walk through ways to architect scalable Rails applications, what I wasn't expecting was all of the useful advice on how to design your code to scale your development organization. Seems obvious now, but Dan's advice and recommendations on how to modularize code, leverage utilities and services in a way that easily allows you to scale a development organization is fantastic and alone would make the book worth buying.

I also appreciate Dan's frank comments in the book. You can tell that he's been in the trenches and is not writing this book as an academic exercise that may or may not be based in the realities of running a web based business.

If you're just getting started on your development project, read this book first so you can architect things the right way from the beginning... fortify your database, modularize your code, and leverage services the right way. You'll be glad you did.

No buzzwords! - 2009-05-19
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
In a Rails world full of buzzwords and magic, this book brings you exactly where you have supposed to be when programming in the enterprise with the framework we all love.
One of the flaw of Rails is that it makes things too simple, leading developers to understimate the complex architectural pieces of an enterprise Web app.
Dan is here to remember you this complexity by showing when it is a good option to use the tools bundled with Rails and when it is not the case. I really understood topics i thought to already know (two for all: SOA and DB normalization). Maybe at the end of the journey you will be less confident about Rails invincibility, but (believe me) this makes you a better developer.

Get this book if you are serious about rails. - 2009-04-05
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
This is my first ever review. Oddly none of the other technical books (over 300) that I read ever compelled me write before.

As Dan Chak recommends, if you are new to rails, first read Agile Development for Rails, then start with Enterprise Rails. Every rails developer needs to read this book.

You are creating an application that you *hope* will actually grow in demand. Isn't that what we are all looking to do in the end - make a hot app? Why not be pragmatic by laying the foundation of robustness, scalability with that in mind in the first place?

I loved the sections on network design, database design (of course, ex-DBA), and services (I know so little about SOA).

Having read 9 other rails books, I was nervous that rails community ignored that some areas completely. Despite its principles, it was intend on re-inventing the wheel. It made me feel like Dorothy in the Oz with munchkins shouting how great Rails is no matter the issue. That made me wonder if rails community was really open and flexible as claimed.

The other books were good, but you need more than books touting rails' magic and coolness - sweet/success/awesome. Enterprise Rails is excellent in terms of readability, examples, and pragmatic practical advice. Yes - it is sweet and awesome too! There now I can be a cheerleader too.

Reading reviews and Chak's articles, I was worried that the book would be full of theory and dry. Instead it covers just the right about of theory supported with insightful examples and exercises to confirm that you really understood the problem and solution.

Thank you Dan for helping me understand rails better and getting rid of that awful in queasy feeling each time I was writing a rail app.

Browse Similar Topics

Top Level Categories:
Internet/Online
Programming

Sub-Categories:
Internet/Online > Web Development
Programming > Ruby

Some information on this page was provided using data from Amazon.com®. View at Amazon >


About Safari Books Online • Terms of Service • Privacy Policy • Contact Us • Corporate Licenses • Help • Accessibility | See us on FacebookSee us on Linked InSee us on TwitterRSS

Copyright 2009 Safari Books Online. All rights reserved.