Perl Instruments
PtPW’08 - {mailto,xmpp}:melo@simplicidade.org
Numbers
• 1993: #1 of Top500: 1024 procs, 59.7Gflops
• 2008: single quad-core Intel Core 2 Duo,
  48Gflops
• 1997: with 7264...
In a networked world...

• You mostly wait for data
• Simple requests, with a fast response
• Some requests, complex to pr...
Usual solution is the
        worker model

Zee
Net
Track and Trace
• When problems start, how do you
  diagnose it?
• tail -f logfile: which logfile?
• Who dealt with the user...
Perl Instruments
• An agent runs on every Perl program
• Connects to a hub via TCP
• Establishes a bidirectional link betw...
Modules

• Instruments::Agent
• Log::Instruments
• Instruments::Hub
• App::Instruments::Sniffer
• (CatalystX::Controller::...
Typical commands

• “increase log level to debug”
• “... but only for user X”
• “... and only in module M”
• Wish list: a ...
CPAN Hackaton

• Protocol::BLIP
• and then Net::BLIP
• and also AnyEvent::BLIP
Thanks!
Upcoming SlideShare
Loading in...5
×

Perl Instruments

1,573

Published on

A brief introduction to an ongoing project to create a agent-based command and control infrastructure for long-running Perl applications.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,573
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Perl Instruments

  1. 1. Perl Instruments PtPW’08 - {mailto,xmpp}:melo@simplicidade.org
  2. 2. Numbers • 1993: #1 of Top500: 1024 procs, 59.7Gflops • 2008: single quad-core Intel Core 2 Duo, 48Gflops • 1997: with 7264 procs, 1 Tflops reached • 2008: 16 dual-socket quad-core Intel, 1Tflop - 7264 vs 128 core’s
  3. 3. In a networked world... • You mostly wait for data • Simple requests, with a fast response • Some requests, complex to process • So we don’t do them in real-time
  4. 4. Usual solution is the worker model Zee Net
  5. 5. Track and Trace • When problems start, how do you diagnose it? • tail -f logfile: which logfile? • Who dealt with the user request? • Which webserver? • Which minion?
  6. 6. Perl Instruments • An agent runs on every Perl program • Connects to a hub via TCP • Establishes a bidirectional link between us and each web-head/worker • Logging, stats and commands flow between the two • Your own C&C system
  7. 7. Modules • Instruments::Agent • Log::Instruments • Instruments::Hub • App::Instruments::Sniffer • (CatalystX::Controller::Viewer)
  8. 8. Typical commands • “increase log level to debug” • “... but only for user X” • “... and only in module M” • Wish list: a remote real-time Devel::REPL • Wish list: enable profiling
  9. 9. CPAN Hackaton • Protocol::BLIP • and then Net::BLIP • and also AnyEvent::BLIP
  10. 10. Thanks!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×