On Mar 23, 4:58 pm, brianp <brian.o.pea...@gmail.com> wrote: > Hey everyone. > > I'm a one person team and in the next month need to produce and deploy > an application. I've been playing with rails for a little over a year > now and recently deployed my first app as a private contract. > > I'm now planning development on a start up company. > > The app should be expecting high volumes (not like Twitter but high > for sure. Its no social media app) My target audience is very specific > but in certain locals the app has been requested by many users who are > in fact waiting for the app to deploy. > > Smaller Volumes actually uploading files and adding objects to the db. > Many people surfing the site. (Probably the same sort of RATIOS as > cragslist (posters:readers, but not near the volume.) > > My current plan is and I need some help with this: > > Start on shared hosting unlimited traffic/storage. Will move to > dedicated-virtual if shared hosting causes performance issues when > traffic picks up.
Stay away from "shared hosting"; you'll have a bad time unless you're running on at least a VPS or equivalent (EC2 instance, Heroku dyno, etc.) Any host that's offering "unlimited bandwidth / unlimited storage" is probably so oversold as to be useless. > Behavior Drive Development via RSpec & Cucumber. > Build the App in rails with ActiveRecord (I read somewhere > ActiveRecord can be swapped out for something faster, Should I use > something else?) > Use multiple MySQL databases 1 master for writing, at *least* 2 slaves > for reading. (Any info on this would be good.) This is a fairly sizable bucket of hurt, especially to start with. I'm also unsure how this squares with the "shared hosting" above. You're better off starting with a single MySQL instance, and dealing with the expansion when the load demands it. > Run multiple mongrel instances via mongrel_cluster. (How many is > sufficient? I think currently I have 4 available on my hosting, can > upgrade later if needed. So that would be 1 main instance and 3 > extras.) The "standard" deployment stack (if such a thing can be said to exist) uses Passenger in preference to Mongrel. There's considerably less Apache fiddling to get a Passenger setup running. Finally, you might want to take a look at some of the "cloud" offerings out there; Heroku is pretty popular, and is apparently very easy to deploy to and scale. Amazon EC2 is another possibility; they also offer pre-configured MySQL server instances on some fairly big iron. Hope this helps! --Matt Jones -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-t...@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.