FastCGI.FCGIServer
— TypeThe FCGIServer sets up a listening socket on which it accepts incoming client connections. For each incoming connection, creates a new ServerConnection instance and starts a separate processing task for messages from that connection. Maintains a list of such connections.
FastCGI.isrunning
— MethodWhether the server is running and listening for new connections
FastCGI.process
— MethodProcesses incoming connections on the listen socket, by creating a separate asynchronous handler for each new connection. Handling of messages on a connection is implemented in ServerConnection.
FastCGI.set_server_param
— MethodSet server parameters this server should respond with. Set values according to resources available on your system and the amount of load you wish this instance to take up.
FastCGI.set_server_runner
— MethodSet the runner type to use: FastCGI.ProcessRunner
or FastCGI.FunctionRunner
.
FastCGI.stop
— MethodRequest stopping of the server by closing the listen socket
FastCGI.HEADER_LEN
— ConstantNumber of bytes in a FCGIHeader. Future versions of the protocol will not reduce this number.
FastCGI.KEEP_CONN
— ConstantMask for flags component of FCGIBeginRequest
FastCGI.LISTENSOCK_FILENO
— ConstantListening socket file number
FastCGI.MAX_CONNS
— ConstantThe maximum number of concurrent transport connections this application will accept, e.g. "1" or "10".
FastCGI.MAX_REQS
— ConstantThe maximum number of concurrent requests this application will accept, e.g. "1" or "50".
FastCGI.MPXS_CONNS
— ConstantIf this application does not multiplex connections (i.e. handle concurrent requests over each connection) then "0", "1" otherwise.
FastCGI.NULL_REQUEST_ID
— ConstantValue for requestId component of FCGIHeader
FastCGI.VERSION_1
— ConstantValue for version component of FCGIHeader
FastCGI.FCGI_RUNNER
— TypeThe runner type to use. Set this with the set_server_runner
method.
FastCGI.FunctionRunner
— TypeRuns fast CGI commands as Julia functions. Holds the runner task and allows waiting and terminating (interrupting) the task.
FastCGI.Plumbing
— TypeHolds all the plumbing required for a running process or function
FastCGI.ProcessRunner
— TypeRuns fast CGI commands as processes. Holds the runner process and allows waiting and terminating the process.
FastCGI.ServerConnection
— TypeProcess a single FastCGI client connection. A client may send multiple requests over the same connection by setting the keep
flag in the BEGINREQUEST message. Handles all messages that are not specific to any request id (including the BEGINREQUEST message that initializes a request). Initializes and maintains ServerRequest instances for each new request id. All messages targeted to ongoing request ids are handled over to respective ServerRequest instances.
FastCGI.ServerRequest
— TypeHandles a single request. Invokes the process that would handle the CGI request, monitors it. Reads inputs and channels them to the running process. Reads outputs from the process and channels them to the connection.
FastCGI._FCGIEndRequestProtocolStatus
— TypeValues for protocolStatus component of FCGIEndRequest
FastCGI._FCGIHeaderType
— TypeValues for type component of FCGIHeader
FastCGI._FCGIRequestRole
— TypeValues for role component of FCGIBeginRequest