On Tue, May 1, 2012 at 9:53 PM, PT <[email protected]> wrote:

> I was wondering how much use CF can really handle either as a server
> product or middleware.  I am not talking about situations where throwing
> hardware at performance issues can get one by, but to the point where
> choosing the right middleware/application backend software can make or
> break an application.


Technically speaking, CF can scale very well. Virtually (or maybe
literally) no-one has the scale problems of Fabebook, so I would call foul
on the premise of this entire question. Many clients come to me claiming
they expect this sort of traffic, but 99.99% of them are completely full of
shit. One wasn't, though they still didn't even come close to Facebook on
scale.

Having said that, I think that the two number one problems with scaling up
CF to "Facebook scale".

First - cost. Justin already mentioned this, and it's a very valid point.
Scaling means lots of servers, no matter how bad-ass your platform is.  If
the world of PHP, there are certainly lots of costs of scaling out to a
bunch of servers, but the license for the PHP isn't one of them. In the CF
world you pay for each. Even using VMs alongside the most cost effective CF
licensing model, you're going to pay out the ass.

I have no idea how many servers Facebook runs today, but in 2009 this
article<http://www.datacenterknowledge.com/archives/2009/10/13/facebook-now-has-30000-servers/>
claims
that they run 30k servers (surely way more by now). Assuming only a third
of those are PHP servers, that 10K servers. Even at 10 VMs per Enterprise
license, at full retain price you're talking about $7.4 million dollars
in licensing.  Of course, Adobe might give you a steep discount, which
would take the price down lower, but even at $1 million, would you pay that
when PHP is free?

Really though, CF doesn't live in the Silicon Valley startup space. Sure,
startups use CF sometimes, but really CF lives in the corporate world, and
in government.  It's rare to see anything similar to FB built in CF. Pud (
http://pud.com/) has built a few things with it, including FuckedCompany,
TinyLetter, and Fandalism, but that's the exception.

The second problem I see getting to Facebook scale is the fact that CF is
closed source. Sure, CF scales well, but occasionally it doesn't. For
example, CF8 had a huge problem with UUID generation that slows servers
down tremendously. In an open source software environment that would get
patched by the startup's engineers, even if it didn't make it back into the
product (though it probably would make it back in). In the world of CF,
however, we all had to wait till CF9 came out to see the fix.  Sure, in the
meantime we could all code around it, or just not use UUIDs - but why do
that when you could fix it yourself?

Aside from those two issues, I think that CF scales very well.  That one
client I was talking about that wasn't full of shit about it's scale? When
Sumo Consulting helped relaunch PGA.com in 2003, it ran on 2 (TWO!!!!)
CF6.0 servers and managed to scale up to over 10 million pageviews/hour. We
made lots of technical decisions that helped achieve this, including
liberal use of caching servers, image farms, etc, but we did it, and this
was on a relatively weak V6.0 release of CF as well...

Admittedly though, PGA.com still isn't the same problem as Facebook because
it has lots of generalized, non-individualized content. If we cached the
leaderboard for 10 seconds that represented thousands of cache hits.  That
made things easy. Facebook shows different stuff to each person so the
cache chunks are much smaller. That makes things harder.

Having said all of the above, I really do think that Railo solves both of
these problems.  you can choose to license it for support. or not.  you can
also get into the source and patch anything you need to in order to speed
it up. I don't know how this will all shake out, but Pud (my Silicon Valley
example) has switched from CF to Railo, for the very reasons I stated above.

So - yes it can scale, but as with any question "it depends".

-Cameron

-- 
Cameron Childress
--
p:   678.637.5072
im: cameroncf
facebook <http://www.facebook.com/cameroncf> |
twitter<http://twitter.com/cameronc> |
google+ <https://profiles.google.com/u/0/117829379451708140985>


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive: 
http://www.houseoffusion.com/groups/cf-community/message.cfm/messageid:350426
Subscription: http://www.houseoffusion.com/groups/cf-community/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-community/unsubscribe.cfm

Reply via email to