After struggling with performance for weeks I realized what the problem was: arc saw all traffic to be coming from the same IP address, and that IP address (localhost) was running afoul of its abusive-ip rules and getting throttled. Result: 1 request every 10s. Here's a fix on anarki:
http://github.com/nex3/arc/commit/1f69b0edb990883ba2f32e6533622814968cd2fd Abuse detection happens later than it used to -- srv.arc has to parse headers before deciding an IP address is abusive -- so you'll be wasting performance if you run directly on port 80. This gotcha has been discussed before: http://arclanguage.org/item?id=3665, http://arclanguage.org/item?id=4944 If you use this patch, you can watch it in action: arc> (set show-requests*)
arc> (set show-abuse*)
|