summaryrefslogtreecommitdiffhomepage
path: root/src/nxt_router.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2017-08-29Fixed debug message broken in e8da77a2c293.Max Romanov1-4/+3
2017-08-29The master process has been renamed to the main process.Igor Sysoev1-13/+13
2017-08-26Introduced nxt_socket_defer_accept().Igor Sysoev1-6/+1
2017-08-17The new module configuration interface.Igor Sysoev1-6/+271
Configuration and building example: ./configure ./configure python ./configure php ./configure go make all or ./configure make nginext ./configure python make python ./configure php make php ./configure go make go Modules configuration options and building examples: ./configure python --module=python2 --config=python2.7-config make python2 ./configure php --module=php7 --config=php7.0-config --lib-path=/usr/local/php7.0 make php7 ./configure go --go=go1.6 --go-path=${HOME}/go1.6 make go1.6
2017-08-16Object mapping interface extended with more string types.Valentin Bartenev1-6/+6
2017-08-11Controller: more HTTP headers and detailed JSON parsing errors.Valentin Bartenev1-1/+1
2017-08-11Request body read state implemented.Max Romanov1-51/+191
With specific timeout and buffer size settings.
2017-08-02Listening socket creation and binding operations are passedIgor Sysoev1-63/+192
to the master process.
2017-08-02Added basic port error handler.Max Romanov1-1/+2
2017-08-02Implicit port read buffer completion.Max Romanov1-8/+4
To disable implicit completion, handler should reset msg->buf field.
2017-08-02Using port rpc in controller->router configuration update.Max Romanov1-32/+5
2017-08-02Using port rpc in router->master start worker request.Max Romanov1-151/+97
2017-08-02Port RPC interface introduced.Max Romanov1-0/+3
Usage: 1. Register handlers in incoming port with nxt_port_rpc_register_handler(). 2. Use return value as a stream identifier for next nxt_port_socket_write().
2017-08-02Added bit flags to type parameter of nxt_port_socket_write().Max Romanov1-2/+3
NXT_PORT_MSG_LAST - mark message as last; NXT_PORT_MSG_CLOSE_FD - close fd right after send; Type constants altered to include last flag for single buffer messages. Last sign is critical for coming port RPC layer. Handlers unregistered on last message. Create sync buffer is not convenient, extra parameter is better.
2017-07-25Assign current request id to prevent port memory release.Max Romanov1-0/+1
2017-07-25Using engine task to avoid racing condition.Max Romanov1-1/+6
2017-07-25Fixed building on Solaris by Sun C.Max Romanov1-2/+3
2017-07-19Listening sockets remaining from the previous configurationIgor Sysoev1-0/+1
were not updated with new parameters.
2017-07-18Added application name in process title.Igor Sysoev1-1/+6
2017-07-18Request-app link introduced to prevent mp destroy for penging requests.Max Romanov1-122/+296
nxt_req_conn_link_t still used for lookup connection by request id. New nxt_req_app_link_t (ra) allocated from conn->mem_pool using mp_retain(). ra stored in app->requests if there is no free worker to process request.
2017-07-18Using correct task for engine post.Max Romanov1-8/+15
2017-07-18Work queue thread assertions. Reset thread after fork.Max Romanov1-0/+2
2017-07-18Mem pool cleanup introduced.Max Romanov1-17/+16
Used for connection mem pool cleanup, which can be used by buffers. Used for port mem pool to safely destroy linked process.
2017-07-18Port allocation and destroy changed. Worker process stop introduced.Max Romanov1-65/+185
2017-07-16Router configuration retention count fixed.Igor Sysoev1-1/+1
2017-07-16Router: joint must be added to engine's joint list in theIgor Sysoev1-2/+4
engine thread.
2017-07-14Router: joint must be checked before memory pool destruction.Igor Sysoev1-1/+5
2017-07-14Router: listening socket configuration retention count fixed.Igor Sysoev1-1/+6
2017-07-14Router: using joint job queues instead of arrays to passIgor Sysoev1-88/+35
listening socket handlers to worker engines.
2017-07-14Router: using joint jobs to pass listening socket handlers toIgor Sysoev1-75/+65
worker engines.
2017-07-13Router: restoring listening sockets of the previous configuration.Igor Sysoev1-0/+6
2017-07-12Closing new listening sockets on configuration failure.Igor Sysoev1-10/+35
2017-07-12Single allocation for app conf and name.Max Romanov1-10/+15
2017-07-12New process port exchange changed. READY message type introduced.Max Romanov1-131/+531
Application process start request DATA message from router to master. Master notifies router via NEW_PORT message after worker process become ready.
2017-07-12Controller: proper reconfiguration requests handling.Valentin Bartenev1-0/+2
Now controller serializes all reconfiguration requests and waits for result from router.
2017-07-11Sending a result of configuration applying back to the controller.Igor Sysoev1-99/+226
2017-07-10Introducing thread-safe nxt_random().Igor Sysoev1-1/+1
2017-07-10Configuration: nxt_conf_map_object() improvements.Valentin Bartenev1-20/+8
2017-07-07Router: a fix in the previous changeset.Igor Sysoev1-1/+1
2017-07-07Router: processing application configuration.Igor Sysoev1-35/+235
2017-07-07Router: connection destroy sequence fixed.Max Romanov1-3/+9
2017-07-07Memory pool thread safety checks in DEBUG build and usage fixes.Max Romanov1-0/+2
2017-07-07Process stop notification from master to all other processes.Max Romanov1-0/+1
New port message type introduced NXT_PORT_MSG_REMOVE_PID. Default handler removes process description from nxt_runtime_t with all ports, incoming and outgoing mmaps etc.
2017-07-07Using engine's task instead of listen's task.Max Romanov1-0/+4
2017-07-07Redirecting buffer completion handler to specific engine.Max Romanov1-11/+30
There is a case in router where we use port in router connection thread. Buffers are allocated within connection memory pool which can be used only in this router thread. sendmsg() can be postponed into main router thread and completion handler will compare current engine and post itself to correct engine.
2017-07-06Router: read configuration from port.Max Romanov1-18/+50
Controller: stub to send configuration from POST body "as is" to router.
2017-07-05An assertion on listening socket close.Igor Sysoev1-2/+5
2017-07-05By default a number of router worker threads is set to a numberIgor Sysoev1-0/+4
of CPUs.
2017-07-05Router: processing JSON configuration.Igor Sysoev1-119/+327
2017-07-05Python WSGI: SERVER_NAME, SERVER_PORT fixed, REMOTE_ADDR introduced.Max Romanov1-0/+3
Shortcut: do not iterate over String (or Bytes) return object. Call 'close()' for return object (if present).