| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
| |
This ensures hung or otherwise really slow requests won't take up
request slots from other requests.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mostly resolves #19, though a follow-up commit will add a request
timeout to stop overly slow requests from taking up slots.
The implementation basically turns the request sockets non-blocking,
and adds them to the poll loop used to accept new connections. Scrape
writes are collected to a request-specific buffer, one collector at a
time, and then queued for writing. Every time poll reports progress
can be made, that request is processed until the next read/write
operation would block, after which control returns to the poll loop.
|
|
|
|
|
|
| |
This paves the way for supporting parallel scrapes (#19); the
implementation for that is going to need to track the state of the
current scrape.
|
|
|
|
|
| |
The `cbuf_alloc` and `cbuf_free` functions conflict with the OpenWrt
`libubox` library naming.
|
|
|
|
|
|
| |
Resolves #4.
The real readability benefits are for test code, which will follow up in due course.
|
| |
|
| |
|
|
|
|
| |
This is a refactoring in preparation for supporting daemonization: we'll want to set up the port before daemonizing, so that any failures can be reported early.
|
| |
|
| |
|
|
|