summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)AuthorFilesLines
2017-07-07Process stop notification from master to all other processes.Max Romanov11-22/+113
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-07Cosmetic changes to remove some annoying valgrind messages.Max Romanov3-2/+12
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 Romanov9-79/+236
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-06Controller: sending JSON configuration to router.Valentin Bartenev4-33/+288
2017-07-06Fixed mapping of int32_t in nxt_conf_map_object().Valentin Bartenev1-1/+1
2017-07-06Router: read configuration from port.Max Romanov6-19/+96
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-05Configuration: basic validation of schema.Valentin Bartenev5-53/+288
2017-07-05Router: processing JSON configuration.Igor Sysoev8-131/+445
2017-07-05PHP SAPI: SERVER_NAME, SERVER_PORT and REMOTE_ADDR introduced.Max Romanov1-79/+146
2017-07-05Python WSGI: SERVER_NAME, SERVER_PORT fixed, REMOTE_ADDR introduced.Max Romanov3-59/+92
Shortcut: do not iterate over String (or Bytes) return object. Call 'close()' for return object (if present).
2017-07-05Complex target parser copied from NGINX.Max Romanov9-54/+413
nxt_app_request_header_t fields renamed: - 'path' renamed to 'target'. - 'path_no_query' renamed to 'path' and contains parsed value.
2017-06-29Added nxt_msec_t element to nxt_conf_map_object().Igor Sysoev2-9/+16
2017-06-29Fixed port processing in nxt_sockaddr_text().Igor Sysoev2-5/+7
2017-06-29Using static and constant linger structure.Igor Sysoev2-16/+16
2017-06-28Fixed building on Solaris broken in changeset 4077decf847b.Igor Sysoev2-3/+3
2017-06-28Controller: fixed reading of request body.Valentin Bartenev1-13/+15
2017-06-28Configuration: reduced names of structures, functions, and macros.Valentin Bartenev4-377/+363
2017-06-28Fixed building with enabled IPv6 support.Igor Sysoev1-4/+4
2017-06-28JSON property iterator nxt_conf_json_object_next_member().Igor Sysoev2-0/+30
2017-06-28Setting listen socket fields lost in changeset 10688b89aa16.Igor Sysoev2-0/+4
2017-06-28Small optimization in nxt_sockaddr_text().Igor Sysoev1-13/+4
2017-06-27Fixed INET6 sockaddr processing in nxt_sockaddr_text().Igor Sysoev1-5/+8
2017-06-27Fixed Unix sockaddr processing in nxt_sockaddr_text().Igor Sysoev1-5/+2
2017-06-27nxt_sockaddr_parse() introducted.Igor Sysoev2-1/+208
2017-06-27Applied nxt_pointer_to() and nxt_value_at() where possible.Valentin Bartenev16-37/+28
2017-06-26Interface for mapping JSON configuration objects to C structures.Valentin Bartenev3-3/+148
2017-06-26Simplified nxt_conf_json_object_get_member().Valentin Bartenev1-7/+1
2017-06-26Double buf completion call on connection timeout fixed.Max Romanov1-5/+1
2017-06-26PHP post body processing fixed, default index name introduced.Max Romanov1-8/+32
2017-06-26Build on Solaris 11 fixed.Max Romanov7-7/+55
2017-06-23Configuration printing functions splitted in two parts.Valentin Bartenev3-162/+213
Requested by Igor.
2017-06-23Renames and reordering of parameters in configuration parser functions.Valentin Bartenev3-261/+278
Requested by Igor.
2017-06-23Incoming and outgoing port_mmap arrays are protected with mutexes.Max Romanov4-21/+33
2017-06-23Increased size of iovec when data passed using shared memory.Max Romanov1-2/+4
Useful for tiny shared memory segment test case.
2017-06-23Added basic HTTP request processing in router.Max Romanov9-33/+563
- request to connection mapping in engine; - requests queue in connection; - engine port creation; - connected ports hash for each process; - engine port data messages processing (app responses);
2017-06-23External Go app request processing.Max Romanov26-1/+2334
2017-06-23PHP app request processing.Max Romanov6-275/+499
2017-06-23Python app request processing.Max Romanov3-255/+328
2017-06-23Application-side message processing.Max Romanov6-765/+520
Usage on the router side: nxt_app_wmsg_t wmsg; nxt_app_parse_ctx_t parse_ctx; nxt_app_http_req_init(task, &parse_ctx); /* parse incoming request data */ if (nxt_app_http_req_parse(task, &parse_ctx, buf) == NXT_DONE) { /* choose app */ nxt_app = nxt_select_app(... &parse_ctx.r ...); /* find port */ wmsg.port = nxt_get_app_port(... nxt_app ...); wmsg.buf = &wmsg.write; /* fill write message buffer in shared mem */ nxt_app->prepare_msg(task, &parse_ctx.r, &wmsg); /* send message to app for processing */ nxt_port_socket_write(task, wmsg.port, NXT_PORT_MSG_DATA, -1, 0, 0, wmsg.write); }
2017-06-23Added mem_pool pointer member to nxt_port_send_msg_t.Max Romanov2-1/+3
To decouple nxt_port_send_msg_t from port.
2017-06-23Moved message size to nxt_port_recv_msg_t for convenience.Max Romanov4-35/+17
2017-06-23Extruded nxt_port_send_port() to send port to one process.Max Romanov2-26/+36
2017-06-23Store pointer to shared memory start in buf->parent.Max Romanov4-232/+393
nxt_port_mmap_t stored in arrays and it is unsafe to store pointer to array element. Shared memory structures and macros moved to separate header file to be used by GO package.
2017-06-23Store mem_pool in buf->data instead of port for consistency.Max Romanov2-18/+38
2017-06-23nxt_process_create() changed to add process to runtime before callbacks.Max Romanov3-16/+21
2017-06-23nxt_port_create() use task instead of thread.Max Romanov3-6/+6
Write socket close() call moved out from nxt_port_create().
2017-06-23Shorter shared memory name generated.Max Romanov1-2/+2