| No photo |
By Scott Walters (scrottie) from phoenix.pm Date: Tuesday, 22 June 2010 13:00 Duration: 20 minutes Target audience: Intermediate Language: English Tags: coroutine plack scaling web |
Writing Crazy Fast Web Apps with Continuity, Plack, and a Homemade Supercomputer
Plack, Continuity, Corona, Twiggy and company bring high performance and high level abstraction to Perl web serving. This talk explores these new wave technologies and then goes on to investigate suitably futuristic ways of scaling pre-forked and coroutine based web serving environments, especially looking at technologies from supercomputing: globally shared memory
systems and single system image clusters, and what Perl and CPAN have to offer to take advantage of these systems. While it's possible to write distributed applications that run on a
bank of disparate computers, doing so bloats code, takes time, and is generally less optimal.
Memcached, database sharding, SOAP API loadbalancing and map/reduce are poor abstractions for most applications, but in the name of speed, these are routinely specified for new designs. On the other hand, abstractions taken from supercomputing offer a far better environment to program Perl web apps in. High energy laboratories, oil exploration companies, financial services companies, meteorology research centers and a host of other institutions have long enjoyed programming extremely large computers with terabytes of RAM and thousands of processors. Cray/SGI pioneered a lot of the technology to scale computers to dozens, hundreds, and then thousands of processors -- and donated the technology to Linux as Free Software. The current largest, fastest computer in the world is a Linux machine. Various ideas of clustering are touched upon, but "single system image" and "global shared memory" systems provide the most fun abstractions to program on. This talk tries to be both interesting and immediately applicable -- you can replicate these experiments in your own engineering department.
- Tatsuhiko Miyagawa (miyagawa)
- Jon Miner (miner)
- Olaf Alders (oalders)
- Shawn Moore (Sartak)
- Lee Aylward (leedo)
- Joe Kline (gizmo)
- Devin Austin (dhoss)
- Doug Bell (preaction)
- Mark Jubenville (ioncache)
- Victor Stevko
- Justin Hunter (arcanez)
- Wes Malone (wesm)
- Sinan Unur
- Alek Rollyson (al3k)
- Michael Lambert
- Charles Phillips (Chuck)
- Michael Moser
- Max Shughart (Maxdash McSlam)
- Kevin Shaum
- Petar Puskarich
- Jason Coble
- bryan abfalter
- Julie Eberhart
- Alex Timoshenko














