* [ANN] yahns 1.15.0 -_- sleepy app server for Ruby
@ 2017-03-23 4:07 4% Eric Wong
0 siblings, 0 replies; 2+ results
From: Eric Wong @ 2017-03-23 4:07 UTC (permalink / raw)
To: ruby-talk, yahns-public
A Free Software, multi-threaded, non-blocking network
application server designed for low _idle_ power consumption.
It is primarily optimized for applications with occasional users
which see little or no traffic. yahns currently hosts Rack/HTTP
applications, but may eventually support other application
types. Unlike some existing servers, yahns is extremely
sensitive to fatal bugs in the applications it hosts.
* git clone git://yhbt.net/yahns
* https://yhbt.net/yahns/README
* https://yhbt.net/yahns/NEWS.atom.xml (supported by most "RSS" readers)
* we only accept plain-text email yahns-public@yhbt.net
* and archive all the mail we receive: https://yhbt.net/yahns-public/
* nntp://news.public-inbox.org/inbox.comp.lang.ruby.yahns
lrg nabgure ubeevoyl-anzrq freire :>
Changes:
yahns 1.15.0
Minor changes to reduce allocations and simplify our code
and dependencies. Nothing particularly interesting unless
you're the type of person who appreciates brake pedals
in with holes drilled in them for weight reduction.
11 changes since 1.14.1 (2016-12-14):
stream_input: avoid allocation for common #read case
proxy_pass: add a note about the instability of this
tee_input: simplify conditional for writing to temporary file
proxy_http_response: reduce memory pressure from larger headers
http_response: make response headers eligible for GC, sooner
update more referenced URLs to be HTTPS
chunk_body: nodoc this internal class
Revert "use olddoc 1.1.0 for generating NEWS + NEWS.atom.xml"
gemspec: stop advertising "private" email address
doc: design_notes: we do not use EPOLLEXCLUSIVE
README: update with disclaimer about subscription
Ovt punatrf pbzvat...
Please note the disclaimer:
yahns is extremely sensitive to fatal bugs in the apps it hosts. There
is no (and never will be) any built-in "watchdog"-type feature to kill
stuck processes/threads. Each yahns process may be handling thousands
of clients; unexpectedly killing the process will abort _all_ of those
connections. Lives may be lost!
yahns hackers are not responsible for your application/library bugs.
Use an application server which is tolerant of buggy applications
if you cannot be bothered to fix all your fatal bugs.
--
EW
^ permalink raw reply [relevance 4%]
* [PATCH] http_response: make response headers eligible for GC, sooner
@ 2017-02-17 20:11 7% Eric Wong
0 siblings, 0 replies; 2+ results
From: Eric Wong @ 2017-02-17 20:11 UTC (permalink / raw)
To: yahns-public
Iterating through the response body can be time consuming and
allocate memory, so nil out the headers object when we're done
with it to give Ruby a chance to recover the memory.
---
lib/yahns/http_response.rb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/yahns/http_response.rb b/lib/yahns/http_response.rb
index bde4b3f..865193d 100644
--- a/lib/yahns/http_response.rb
+++ b/lib/yahns/http_response.rb
@@ -200,7 +200,7 @@ def http_response_write(res, opt)
return step_write
end
- wbuf = rv = nil
+ headers = wbuf = rv = nil
body.each do |x|
if wbuf
rv = wbuf.wbuf_write(self, x)
--
EW
^ permalink raw reply related [relevance 7%]
Results 1-2 of 2 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2017-02-17 20:11 7% [PATCH] http_response: make response headers eligible for GC, sooner Eric Wong
2017-03-23 4:07 4% [ANN] yahns 1.15.0 -_- sleepy app server for Ruby Eric Wong
Code repositories for project(s) associated with this public inbox
https://yhbt.net/yahns.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).