Monday, October 1, 2007

Adobe MAX 2007 - day 1

keynote session

coming soon... (it's on paper :( )


adobe coldfusion monitor


runs from CF admin

stats screen 1
  • active requests
  • active cf threads
  • slow requests
  • slow cf threads
  • sessions
  • cumulative server usage

stats screen 2
  • memory usage
  • run garbage collection (be weary of this)
  • tuning queries is a better method to tune cf server
  • monitoring and profiling are not process intensive, memory tracking is heavy
  • application scope memory usage

stats screen 3
  • server scope memory
  • database queries (active, slow, cached, status, pool status, most frequent)

stats screen 4
  • errors and timeouts

alerts
  • set them up as server crash predictors

trigger snapshots
  • displays a snapshot of the server




A Virtual Trading Floor: Bringing Wall Street to the (Biz) Classroom
Wharton Security Xchange (WSX)

  • knew long-term goal was the web
  • a good idea: all business logic done in database
  • trade handler & FIFO order handling

WSX, v1
  • The Good
  • Immediate response times
  • Rich and realistic UI
  • Compelling competitive atmosphere
  • Fine-grained centralized control
The Bad
  • Visual Basic (team of web developers can't maintain, client-based install)
  • Hindered external expansion
  • Stanford case (shipped off exe, shipped off sql server db)

Flex 2.0 w/ LiveCycle Data Services 2.5

Traders' Incoming Orders ----> Order Execution <---> Order Book ---> Order History

Move to Flex & Dataservices
  • Flex Builder 2.0 a powerful and familiar IDE
  • Resulting SWF gave total UI control in browser
  • Flex Data services

Communications - design choices
  • Data Mgt
  • Ideal for keeping clients sycnhed
  • trickey when changes can come externally
  • Data Msg'ng
  • Provides a real-time consumer producer model
  • Remote objects
  • CFC's

Process
  • Group development: challenging synchronization
  • 1 week of rapid development w/ (in)experienced flex dev's
  • new software dev paradigm for compiled code
  • new challenge: server push

tech solution summary
  • consumer/producer messaging
  • coldfusion server push
  • one-quarter second
  • cf gateways
  • cell renderers

  • cf8/lcds 2.5
  • flex builder 2.01
  • sql server 2005

They keep 5 years of data

Conclusion
  • Flex helped to achieve long-term goals - external adoption
  • Flex LCDS is a viable tool fro real0time financial apps
  • freedom from client
  • keeping relevant tech in front of new gen of students


Leveraging ColdFusion Components

blessing and curse
  • the problem with rapid development is that it's too easy to write spaghetti code
  • resist the urge to File.. New,
  • spaghetti code = bad
  • cfinclude - good for reusing static html but that output can't be customized

cf_customtag
  • for customized content

user defined functions
  • can easily return values but
  • code must be manually included
  • udfs are just collections of methods, data is not encapsulated
  • can't be used outside of a .cfm page

CFCs
  • encourage better code org
  • easier to call/invoke
  • more functional than UDFs
  • stores instance data as well as encapsulate functions
  • reusable from any app that can use web services or flash remoting

basic rules
  • start w/ a set of udf's in component tag
  • use .cfc file extension
  • store .cfc files in the web root (if cfc's will be called as web services)

anatomy of a cfc
  • benefits
  • the cfc file doesn't have to be included

Demo 1
  • demo a simple CRUD app
  • pick a page and move its brains (data access code) into CFC

Using CFC's
  • building blocks for page based apps
  • vs CreateObject