On Sat, Feb 27, 2010 at 7:23 AM, Cameron Childress <[email protected]> wrote: > I'd also highly recommend Mike Brunt's blog (and his consulting work). > He focuses on on scaling and High Availability (HA) with CF. He also > does consulting work specifically in this area so you might consider > adding a visit from him to your development process, specifically > during the planning and load testing stages. Also - he's from the UK, > so you will both enjoy that aspect I imagine.
I've heard excellent things about his work as well. JVM tuning is a dark art indeed and CF will live or die by the JVM performance. > http://www.cfwhisperer.com/ > > Lastly, for a good roundup of strategies that cross a wide variety of > technologies, you may want to spend a day or three reading and > following linkns from the High Scalability blog. It has several posts > about the strategies that Twitter, Facebook, etc use to scale, as well > as links to LOTS of other scaling resources. Two things I'd like to point out about the high availability stuff here. 1) Know your application. Twitter and Facebook are public-facing, high individual use sites. Their traffic comes and goes in waves based on public computer usage patterns and they need to be tuned for that. On the other hand, a lot of business applications like the ones I generally write, have a relatively low public user load and the majority of the load comes from bulk data interchange and processing. I get a data file with 100,000 records to import, process business rules on, transform, notify, etc and then it might be totally dead for an hour. And those 100,000 records might only occupy one single HTTP session whereas 100,000 records on Twitter might involve several hundred thousand HTTP sessions. Just totally different scenarios and they need to be tuned in a completely different way. 2) Consider combining technologies. Twitter and Facebook both use different programming languages depending on what the section you are interacting with is. Facebook uses PHP for the front end, but the chat system is all done in Scala. Scala also backs the communications portion of Twitter while the front end work is done with Ruby on Rails. My work apps usually combine me writing CF and someone else writing .NET MVC code in C# My current side project is Ruby on Rails (using JRuby on the JVM to easily integrate with iText) and a C# .Net Forms app fronting part of it and ExtJs fronting that admin. Some things are much easier to do in one language than another. The nice thing about Coldfusion is that it is a great "glue" language and does a brilliant job of making a cohesive solution out of several interacting parts. Cheers, J ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Want to reach the ColdFusion community with something they want? Let them know on the House of Fusion mailing lists Archive: http://www.houseoffusion.com/groups/cf-community/message.cfm/messageid:312783 Subscription: http://www.houseoffusion.com/groups/cf-community/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.5
