[Catalyst] Streaming IO

Matt S Trout dbix-class at trout.me.uk
Wed Aug 17 00:11:38 CEST 2005


On Tue, Aug 16, 2005 at 05:49:00PM -0400, Perrin Harkins wrote:
> On Tue, 2005-08-16 at 23:43 +0200, Sebastian Riedel wrote:
> > Blame Matt, he made me rewrite the engines with POE today. :)
> > I'm not very far, because of the streaming io problem.
> 
> Won't all the other I/O tasks, like DBI or reading template files, also
> be a problem?  I'm not a POE user, but as I understand it you have to
> use special POE-friendly methods for all DBI stuff, usually involving
> forking.

Not exactly.

If you want to do asynchronous I/O on a particular task you need an event
driven POE handler for that task. DBI doesn't do asynchronous IO, so people
fudge it by forking.

Provided you're happy with synchronous I/O you can use whatever you like
under POE.

All POE would be handling here is the streaming input and streaming output
at the start and end of a request; in the middle is just a normal Catalyst
processing stage, pretty much.

Well, until I get some of my scarier ideas working, anyway ...

-- 
     Matt S Trout           Website: http://www.shadowcatsystems.co.uk
  Technical Director        E-mail:  mst (at) shadowcatsystems.co.uk
Shadowcat Systems Ltd.

 + Help us build a better perl ORM: http://dbix-class.shadowcatsystems.co.uk/ +



More information about the Catalyst mailing list