Tcl in AOL Digital CityThe Architecture of a Multithreaded High-Performance Web Site
Welcome To Digital City
You Just…
Overview
AOLserver and Multithreaded Tcl
AOLserver Background
AOLserver Basics
AOLserver Tcl
AOLserver Tcl Model
Example: CGI-style Request Procedures
Example: Database Access
Example: Background Tasks
Example: AOLserver Dynamic Pages
Example: Simple ADP Template
Example: ADP Debugging
AOLserver Multithreaded Tcl
What is Multithreading?
What You’ll Want to Know
What You Can Generally Ignore
Why Are Threads Good?
Example: Event-Driven vs Thread I/O
Why Threads May Be Bad
Multithreaded Tcl
Multithreaded Tcl - Mutex Protection
Multithreaded Tcl - Thread Local Storage
Multithreaded Tcl - Event Loop
Tcl 8.2 Multithreading Issues
Multithreaded Tcl Interp Initialization
AOLserver Tcl Interp Initialization
First Solution: Interp Pools
Second Solution: Direct Sharing
Latest Solution: Interp Cloning
AOLserver Multithreaded Tcl Examples
Example - Creating Threads
Example - Sharing Memory
Example - Simple Cache
Example - Real Cache
Putting AOLserver To Use
The Digital City Platform
What is Digital City?
The Digital City Challenge
And Digital City Must Scale
The Digital City Architecture
Digital City Servers
Some Numbers...
Examples
Example: NV
Example: Proxy
Example: Sob
Sob-Powered Publishing Tools
Extensions Working Together
MovieGuide
MovieGuide Features
MovieGuide Components
MovieGuide 1.0
MovieGuide 1.0 Issues
MovieGuide 2.0
MovieGuide 2.0 Issues
MovieGuide 3.0
MovieGuide 3.0 Success
Monitoring Performance
URL Stats
Tcl Statistics
Anything Specific to Multithreading?
Cache Statistics
Lock Contention
Overall Performance
Wrap Up
Who Developed and Operates Digital City?
Where To Get More Information
Email: jgdavidson@aol.com
Other information: Slides from the Tcl/2k Conference