Ticket #10 (closed defect: fixed)

Opened 3 years ago

Last modified 2 years ago

Optimize web server

Reported by: scottmc Owned by: scottmc
Priority: major Milestone:
Component: SpamZilla Version:
Keywords: Cc:

Description

The web server currently fetches data from the file system using blocking I/O, this stops the entire process for the length of the read or write. Typically, file system I/O is damn fast, but not fast enough. The speed of the webserver and the over all reliabile speed of the application could be increased by placing file system reads in a ReadWrite? wheel, using a Stream filter, to allow the largest read and write chunks possible.

This would allow the operating system to buffer the majority, or all in most cases, of the read, not blocking the webserver from accepting new I/O while this operation is being processed. It's relatively trivial to do, do it sooner than later

Change History

Changed 3 years ago by scottmc

  • status changed from new to assigned

Changed 3 years ago by scottmc

  • status changed from assigned to closed
  • resolution set to fixed

I fixed this by making it use the POE::Wheel::ReadWrite?, I've submitted a patch back to the original author. The webserver is now considerably more responsive, in addition to not causing blocking behavior.

Changed 3 years ago by scottmc

Changes are commited to trunk Revision 286

Changed 2 years ago by scott

  • milestone AlphaZero deleted

Milestone AlphaZero deleted

Note: See TracTickets for help on using tickets.