Go to file
Daniel Lo Nigro 9ade227abb Implement support for UNIX sockets.
The common use-case for Kestrel in production will be behind a reverse proxy such as Nginx. In cases where the reverse proxy is located on the same machine as the application, connecting via a UNIX socket is more efficient than a TCP socket, as it avoids going through the network layer. Accessing 127.0.0.1 through TCP still needs to initiate a TCP connection and perform handshaking, checksumming, etc, all of which is avoided by using UNIX sockets.

 - Moved TCP-specific stuff from Listener into new TcpListener class (same with ListenerPrimary and ListenerSecondary)
 - Made Listener abstract
 - Created new PipeListener. Note that while the use case is for UNIX sockets, this is called "Pipe" in uv, so I've called this "PipeListener" so the terminology is consistant
 - Uses "unix" URL scheme to determine whether to use socket. "http://127.0.0.1:5000" is for listening via TCP while "unix:///var/run/kestrel-test.sock" is for listening via UNIX socket

#156
2015-08-15 15:50:34 -07:00
build
samples Implement support for UNIX sockets. 2015-08-15 15:50:34 -07:00
src/Microsoft.AspNet.Server.Kestrel Implement support for UNIX sockets. 2015-08-15 15:50:34 -07:00
test/Microsoft.AspNet.Server.KestrelTests Ignore zero length writes when automatically chunking responses 2015-08-14 15:59:47 -07:00
tools/Microsoft.AspNet.Server.Kestrel.GeneratedCode Handle broken assembly versions on mono 2015-08-15 03:12:59 -07:00
.gitattributes
.gitignore Gracefully shutdown even when there are open connections 2015-06-11 17:06:25 -07:00
.travis.yml Install Libuv on Travis 2015-07-31 11:32:01 -07:00
CONTRIBUTING.md
KestrelHttpServer.sln Merge Kestrel into Microsoft.AspNet.Server.Kestrel 2015-08-11 14:56:20 -07:00
LICENSE.txt
NuGet.Config Update dependencies after rename to Microsoft.Dnx.Compilation.CSharp 2015-08-05 11:07:13 -07:00
README.md Add AppVeyor, Travis build status 2015-06-23 07:25:27 +03:00
appveyor.yml
build.cmd Fix build break 2015-08-12 13:10:09 -07:00
build.sh Change hardcoded `bash` shebang to `env` 2015-06-23 11:00:06 -07:00
global.json
makefile.shade

README.md

KestrelHttpServer

AppVeyor: AppVeyor

Travis: Travis

This repo contains a development web server for ASP.NET 5 based on libuv.

This project is part of ASP.NET 5. You can find samples, documentation and getting started instructions for ASP.NET 5 at the Home repo.