Sunday, November 16, 2008

Adobe Max - San Fran - Day One

Very busy day, long lab. Very informative, but not exactly what I expected. The conference seems to be well attended. Sat behind a really nice guy from a major US University - got to hear about some of the bureaucracy and process in a large educational institution.

Afterwards, Jay and I tried to find a good steak house, and ended up at JohnsGrill. Amazing place with live Jazz music and a theme revolving around Sam Spade from the Maltese falcon.

The lab was on Building High Performance apps by Figleaf. Great case studies, taking into account their customers like NIST and the National Park service. It didn't touch on security or actually building apps.

Some tips from our friends at Figleaf
  • Shoot for CF page executation time of under 100ms
  • Use 64-bit processors - they rock, especially on Linux
  • To avoid JVM memory issues, consider deploying on JBoss
  • Upgrade to JVM 1.6_10
  • Use OpenSTA for load testing
  • Check out SeeFusion for testing if the built-in tools aren't working
  • FusionCube has a tool called 'Scope Enhancer' that sounds very useful
  • Multi-processor machines are great, especially if there may be long running requests
  • Remember that every JVM version change results in different optimization
  • Remove IIS application pooling for the CFIDE directory
  • The major scalability issue is usually garbage collection
  • Disable the 'Save Class Files' setting - can result in too many class files
  • Disable the setting 'CFC Type checks' in production to speed it up
  • Consider using 'Cache web server paths', remember that this setting is set on an instance-by-instance basis
They suggest installing the multi-server install using the JRun built-in server, and then deploy a couple instances and bind them to IIS. We discussed the basic inner workings of JVM - eden, tenured and perm gen spaces. We talked about JVM settings like -xmsMemSize, HeadDump settings. The server monitoring tools are great, but add a lot of overhead when Memory Tracking is on.

There are issues with session replication in CF 8. Sticky sessions with instance clustering work great. Figleaf suggests considering writing session vars to DB using OnRequestEnd, basically replicating the sessions yourself.

Interesting, but not exactly what I expected.

No comments: