Deploying Rails Applications: A Step-By-Step Guide (Facets of Ruby)
|
| List Price: | $34.95 |
| Price: | $25.51 & eligible for FREE Super Saver Shipping on orders over $25. Details |
Availability: Usually ships in 24 hours
Ships from and sold by Amazon.com
45 new or used available from $12.17
Average customer review:Product Description
See how to tell whether you've bought enough firepower, and learn how to optimize your Rails projects applications in a systemic, rational way. Take advantage of advanced caching techniques, and become and expert with the latest servers in Nginx and Mongrel. Don't worry. You'll get a dose of Apache too.
Not only will you learn how to configure your production environment, you'll also see how to monitor it with free, automated tools that can restart your servers when the memory use gets too high for comfort. You'll see how to take a performance baseline, profile for bottlenecks, and solve the most common performance problems you're likely to see.
You'll learn:
Everything from source control and migrations to Capistrano, rake tasks and beyond.
Directly from authors who run EngineYard, one of the best Rails hosts in the business.
How to deploy your applications to multiple production servers with a single command using Capistrano.
How to setup a Rails/Nginx/Mongrel cluster for applications with high scalabilty needs.
...and more!
Product Details
- Amazon Sales Rank: #224733 in Books
- Published on: 2008-05-01
- Original language: English
- Number of items: 1
- Binding: Paperback
- 261 pages
Features
- ISBN13: 9780978739201
- Condition: NEW
- Notes: Brand New from Publisher. No Remainder Mark.
- Click here to view our Condition Guide and Shipping Prices
Editorial Reviews
About the Author
Customer Reviews
authoritative guide to rails basic tools
This is a superb book, the best compact writeups i've seen on setting up Apache load balancing and proxies, nginx, mongrel, SVN server and repos, DNS, MySql caching, capistrano, rake, profiling apps (and there's a lot of blogs, books on these subjects. Entire mailing lists, in fact). Compact means they don't go into every option or configuration conceivable, you get everything (to almost 2 sigma) you need to know to get it going reliably, scalably, loggably, plus a lot of hard-won knowledge about what can go wrong. Just not quite the detail they go into, in, say the Frisch and Nemeth/Snyder/Hein unix admin books. I think for a lot of people (many java or PHP devs don't have to worry about the infrastructure of their production boxes, they had STDIFT (somebody to do it for them), this is a must have.
This book isn't perfect. What it covers it covers beautifully, what it doesn't cover, well, it kinda slows down to 30 MPH for a red light. Witness pp 234-5: covers nested sets, STI, indexes and normalization, AR duck typing, polymorphic associations. Geez, that's a lotta topics for slightly less than 1 page. Well, they're outside the scope of this treatment and there aren't a lot of references given. What about all the Yslow stuff that everybody's talking about: JS /CSS compression/lazy loading, CDN, reduce DNS lookups. Some topics are here, some aren't. Basically, that's what you worry about after you've dug thru logfiles and profiled, topics this book covers in excellent depth.
There are a few editing/editorial slips. 3 authors flip-flop between debian/ubuntu & RH/centOS/FC families (and don't talk about FreeBSD /solaris). Page 92 seems to suggest the default Leopard ruby install is fine. p 212: they're comparing a ubuntu, single CPU machine against a 2-cpu, windows machine running ??. I figure the editor should have said "huh?". and p 172 they write a lot about mySQL clustering limitations, when they could've talked about postgres instead of/in addition to.
But really with stuff they could've written about, we're talking about a 600 page book, not this 250 page book with nice margins, easy to read fonts. So that' s my story and i'm sticking to it.
Some good info, lots of padding
Overall this book contained some useful information, but some explanations were vague and there was way too much padding.
Version control is addressed and Subversion is the only program discussed. It would have been nice to have had more general version control information and use Subversion as an example of it rather than showing svn as being the only way, especially with the increased popularity of Git for version control with ruby.
There is an entire chapter on using windows to deploy. I don't use windows so I didn't read this chapter, it might be useful to some.
The author talks about using virtual machines to deploy in Chapter 7. I thought this information could have been a little more detailed. Perhaps if the book didn't contain so much padding there would have been room (seriously, if you are considering deploying rails, surely you should know how to install it and create a new rails app??).
It would have been nice if there had been more detailed examples from start to finish rather than bits and pieces.
An nginx config file is included at the end of the book for those who would like a complete example.
MySQL is the only database addressed and the author continues to give directions on how to replicate / cluster mySQL even AFTER saying repeatedly that it can be a bad idea. It would have been nice if he had addressed an alternative database since Rails is meant to be database independent (easy database switching?).
Does include info about deploying to a shared host environment as well as VPS and dedicated servers.
Overall, some good information is in this book, but there could be a lot more information as well. Might be a good place to start, but you will likely need to look up a lot of additional information. I'm pretty new to developing and I found this book to be very easy to read, too easy, as it contains very little solid information.
Quite useful for Figuring out Capistrano and Mongrel Cluster
The value provided by this book is quite subtle. It is when you are faced with a task of deploying something you don't quite understand and are uncertain of which way to go.
I had to upgrade the app that I had inherited from Capistrano 1.4.1./Deprec gem 1.9.2 to Capistrano 2.5.0 and was not quite sure of how to go about it. The app also used mongrel clusters that I did not know well.
I realized that I did not quite undertstand how Capistrano worked in the first place. I had many references, all good mind you, but did not fully get it until I sat down with Ezra's book this week-end evening and went through it again focusing on chapters on Capistrano and Mongrels. This time though, I had a sense of purpose, i.e., to get this migration task done. Ezra really has been through many deployments and communicates that knowledge in a very useful and fundamental way.
The next morning, I cleaned up my muddled script and was able to debug it within an hour and deployed it successfully. It is working quite well. Thanks Ezra. Now if you could do a detailed book on Phusion Passenger, I would buy it.
Bharat




