On Jan 11, 2006, at 3:13 PM, csn wrote:
an aging point of sale and circulation issue tracking system on our
Our paper has around 350 employees and serves a 250k population and
our website gets a lot of traffic. I know that the word enterprise is
like loaded dice so take this for what it is. But I would definitely
call our setup here a small enterprise and I have yet to even come
close to hitting any limitations and I think that rails can scale
way further then I am pushing it here right now.
Also the website is not your typical rails app. It runs on 5
different data sources with only two of them inside the building. And
the majority of the data is integrated without ActiveRecord at all.
The web site and intranet apps run on a small cluster. We have a
dual g5 xserv that runs lighttpd/fcgi to serve rails and static
content. the we have a dual xeon debian box for postgresql. And one
more debian box that hosts about 20 client websites and runs more
fcgi listeners for the main site. For what’s going on right now, we
are not even pushing any of this hardware very hard. All three
machines average about 10% cpu usage at any given time.
There is also another xserve for the newsroom database that holds
all the locally written stories and photos in a proprietary Baseview
database that has a super crappy API called LiveIQ script. So my
model that handles that creates a small DSL that converts queries in
ruby using blocks into the liveiq script on the fly. A lot of the
data on the site comes from this db.
We also get a ton of content from the AP newswire. This comes in as
very nasty xml thats base64 encoded. This data gets heavily munged
into the format that gets displayed on the web. We also have an xml-
rpc connection to the Seattle Times(our parent newspaper) to grab
content from then as well.
Then we have our local postgresql db that runs the content
management system on the site. I am working on a new circulation
system that is a large project. It will include publishing the entire
newspaper online in a pdf format so we can sell digital
subscriptions. People that get the actual paper will get the online
version for free. Plus i am building a blog and photo gallery system
that anyone with a digital or physical subscription will get an
account on when they sign up. this will be a blog system like blogger
or something similar in the fact that it will be one application that
runs multiple peoples blogs in a self contained way. And when this
goes live you will be able to click a link on any news item on the
site and get a list of the bloggers in our system that have blogged
about that news article.
We have around 60-70k subscribers right now so right off the bat the
new blog system will need to support that many users and when people
can get a digital subscription to the paper we see the amount of
users growing rapidly. There will be some cool social networking tie
ins between all the bloggers on our system about local events and
meetups and the like.
Since I am the only coder in the whole company, the only reason I
even dream of building this system myself is because I can use rails
to do it. The way rails is organized promotes very good practices if
you use it to its fullest(read tests) that I can take on a project of
this size on my own. I am very productive in rails and I have a
really easy time coming back to code later and being able to
instantly see what I was doing and be able to refactor at will.