• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

sozu-proxy / sozu / 1177
32%

Build:
DEFAULT BRANCH: master
Ran 31 Aug 2018 02:23PM UTC
Jobs 1
Files 53
Run time 5s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
1177

push

travis-ci

Geal
implement an accept queue

instead of accepting new sockets once we have room for new client
sessions (with the buffer pool usage, etc), we accept as many sockets as
possible, and put them in a LIFO queue, storing the date at which it was
accepted. We then go through that queue and create as many clients as
possible.
In normal load, the queue is always empty. Under considerable load, the
accept queue will fill up, and clients will be created in priority for
the most recent sockets (thanks to the LIFO queue), and sockets older
than 60s will be closed directly.
This allows us to keep wait times low even when under load. With the
previous code, when sozu was under load, we would avoid accepting new
connections. But those connections were already accepted by the kernel
(TCP handshake) and are holding kernel resources (some data can even be
already available). And if we take too much time accepting those, we
could get in a case where we parse that available data, send to backend,
get the response, but when we send the response to the client, the
client has already dropped the connection (timeout).
By closing sockets that are too old, we can signal early to the client
that we're overloaded, and they should try later.

5350 of 13419 relevant lines covered (39.87%)

0.45 hits per line

Jobs
ID Job ID Ran Files Coverage
4 1177.4 31 Aug 2018 02:23PM UTC 0
39.87
Travis Job 1177.4
Source Files on build 1177
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #1177
  • 0dc66ca8 on github
  • Prev Build on master (#1175)
  • Next Build on master (#1176)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc