<snip>
The download even if known-length can be aborted at any time, also the
backend system may change the quota at any time as well.
So IMO the best idea is to collpase the requests all down to a request
asking for N bytes and passing along any parameters which the quota
backend needs.
The basic idea was started here:
http://bugs.squid-cache.org/show_bug.cgi?id=1849
Looking back at the discussion thread it was started by you in Feb
2009 the model description is here
http://marc.info/?l=squid-dev&m=123570800116923&w=1. Although it seems
I sent you something in private before that with more details. Sorry
that mail is gone now.
The Measurement Factory have since created the client_delay_pool part
of it but without any helper hooks. So the current is only /sec
capping. Adding a helper API hook that sets the client DB quota field
values and updates it when exhausted
That is fully controllable already with per-request limitations and
speeds.
The big cases that are left is fixed-size quotas that run down. No
need for lookups with details from particular headers or such at this
point.
<snip>
Yip - I remember this now. I am sure myself and Alex also exchanged some
emails regarding this and then I ran out of time and left the idea
there. I was also afraid of stepping on Alex's work (this happen in a
prev. project, cost me hours of coding), which now completed, won't be
an issue anymore.
I'll get my BZR working and then spend some time on client_db.cc
Cheers,
Pieter