My rails ecommerce startup launched: RevZilla.com
revzilla.com
revzilla.com
The system it is running off of was built from scratch in Rails, with a PostgreSQL backend. We are also heavily relying on Apache Solr (and the acts_as_solr plugin) to power our product browse / search pages, and use it to provide some very cool faceted search capabilities.
I applied for YC funding two years ago with a different idea and got rejected (for valid reasons). We did not apply for funding with this startup for two reasons, one was we did not need external funding, we have been able to bootstrap this far. The second reason was we wanted to stay in the Philadelphia area, our industry connections are here and we are also opening up a retail store. So since this is not a purely tech startup, the benefits of being in the valley or Boston are a bit less.
Please give us some feedback on what you guys think, and if anyone wants to chat about implementation or other specific details drop me a line, my email is in my profile.
But seriously, you're using way too many images!
Total loading time: 8.8 seconds (ed: WOW!)
objects:123 (762.2)
Scripts:3 (142.2KB)
Images:117 (528.6KB) (Ouch!)
Any suggestions are welcome!
Currently getting an 81 on yslow which isn't terrible for how hefty the site is
Your site, in current setup, wouldn't last very long if you had hundreds of concurrent requests since you have so many requests. You do realize that most browsers allow two concurrent downloads per IP? You should distribute all these images across many subdomains (just make up subdomains; they can all point to the same server).
assets1.revzilla.com, assets2.revzilla.com etc.
Also, why aren't you running a real server for static content?! Mongrel ain't gonna cut it. Use Mongrel for dynamic stuff (i.e. Rails pages) and use Nginx (or apache or lighttpd) for static content (css and all these images that you have).
Finally, google for "css sprites" and optimize these images.
PS: Site looks good but it's just horribly assembled. You should replace 90% of those images by using CSS colors.
I appreciate the tips, but at the moment we have pretty much all of your points covered
- We are currently using asset hosts (assets0..assets3.revzilla.com) (Rails provides this functionality out of the box with 2.0)
- All static content IS served by nginx, only the rails requests are being served by mongrel. All static assets are also sent with the appropriate cache headers
- css sprites are used sparingly where appropriate, however they are not a silver bullet, and you run into cross browser issues pretty quickly (namely safari)
- We are working on reducing the number of images at the moment. In general I would rather have a site which is true to the original design and then optimize from there, rather then cutting corners early on.
no flashy web two oh shit that gets in the way, just a competently design site based around selling stuff.
the only catch is whether or not the customer service is good, but from the 'why revzilla' sidebar, it looks like the stated goals are at least on track :)
Be interested to hear about its scalability once it hits its stride and experiences its first seasonal rush. From my experience in that industry, I think this is the slow time if I am not mistaken.
Either way - well executed. Bravo.
Any way I can get a discount? :-)
-Johnny