The function handler will be the handler for each http trigger. It
will look up the function service map to find a service for the
function (and call the pool manager to create a new service if one
doesn't already exist, though this isn't implemented yet). It'll then
proxy the request to the service.
Concurrency-safe mapping from a function's (name, uid) identifier to a
URL. This will be used to look up the service URL associated with a
given function.
Mutable mux test occasionally panics because the server is shut down
before the client goroutine. Fix this by shutting down the client
goroutines before shutting down the server.
We want to be able to update routes without restarting the http
server. mutableRouter is a very thin wrapper around
github.com/gorilla/mux that enables safely switching to a new mux
router without pausing requests.
First cut of a function run container for NodeJS. So far, just the
simplest stuff: loads a user function and routes requests to it. The
user function is assumed to be in a file at a provided location. The
fission runtime is expected to place the file there securely (exactly
how we'll do that is TBD).
Doesn't handle path template params, query strings, etc. Will also
need to be extended later with some sort of hook for graceful
shutdown.