Raindrops Aggregate Aggregate::LastDataRecv Aggregate::PMQ InetDiagSocket LastDataRecv Linux ListenStats Middleware Middleware::Proxy Struct TCP_Info Watcher


::cornify! ::default_aggregate ::default_aggregate= ::extended #count!

module Raindrops::Aggregate::LastDataRecv

This module is used to extend TCPServer and Kgio::TCPServer objects and aggregate last_data_recv times for all accepted clients. It is designed to be used with Raindrops::LastDataRecv Rack application but can be easily changed to work with other stats collection devices.

Methods wrapped include:


raindrops_aggregate [RW]

The integer value of last_data_recv is sent to this object. This is usually a duck type compatible with the Aggregate class, but can be anything that accepts the *<<* method.

Public Class Methods

cornify! () source

automatically extends any TCPServer objects used by Unicorn

default_aggregate () source

By default, this is a Raindrops::Aggregate::PMQ object It may be anything that responds to *<<*

default_aggregate= (agg) source

Assign any object that responds to *<<*

extended (obj) source

each extended object needs to have TCP_DEFER_ACCEPT enabled for accuracy.

Public Instance Methods

count! (io) source

The last_data_recv member of Raindrops::TCP_Info can be used to infer the time a client spent in the listen queue before it was accepted.

We require TCP_DEFER_ACCEPT on the listen socket for last_data_recv to be accurate

Pages Classes Methods
mail archives:
public: / private:
source code: git clone git://
	git clone